mirror of https://github.com/citusdata/citus.git
Use selectedCols from perminfo
Corresponding PG commit a61b1f74823c9c4f79c95226a461f1e7a367764bpg16_kickoff
parent
524bfc44e0
commit
eca67443de
|
@ -33,6 +33,7 @@
|
||||||
#include "optimizer/paths.h"
|
#include "optimizer/paths.h"
|
||||||
#include "optimizer/plancat.h"
|
#include "optimizer/plancat.h"
|
||||||
#include "optimizer/restrictinfo.h"
|
#include "optimizer/restrictinfo.h"
|
||||||
|
#include "parser/parse_relation.h"
|
||||||
#include "utils/builtins.h"
|
#include "utils/builtins.h"
|
||||||
#include "utils/lsyscache.h"
|
#include "utils/lsyscache.h"
|
||||||
#include "utils/relcache.h"
|
#include "utils/relcache.h"
|
||||||
|
@ -1371,7 +1372,9 @@ AddColumnarScanPath(PlannerInfo *root, RelOptInfo *rel, RangeTblEntry *rte,
|
||||||
cpath->custom_private = list_make2(NIL, NIL);
|
cpath->custom_private = list_make2(NIL, NIL);
|
||||||
}
|
}
|
||||||
|
|
||||||
int numberOfColumnsRead = bms_num_members(rte->selectedCols);
|
/* TODO: can perminfo be NULL??? */
|
||||||
|
RTEPermissionInfo *perminfo = getRTEPermissionInfo(root->parse->rteperminfos, rte);
|
||||||
|
int numberOfColumnsRead = bms_num_members(perminfo->selectedCols);
|
||||||
int numberOfClausesPushed = list_length(allClauses);
|
int numberOfClausesPushed = list_length(allClauses);
|
||||||
|
|
||||||
CostColumnarScan(root, rel, rte->relid, cpath, numberOfColumnsRead,
|
CostColumnarScan(root, rel, rte->relid, cpath, numberOfColumnsRead,
|
||||||
|
|
|
@ -1722,7 +1722,7 @@ create_estate_for_relation(Relation rel)
|
||||||
rte->relid = RelationGetRelid(rel);
|
rte->relid = RelationGetRelid(rel);
|
||||||
rte->relkind = rel->rd_rel->relkind;
|
rte->relkind = rel->rd_rel->relkind;
|
||||||
rte->rellockmode = AccessShareLock;
|
rte->rellockmode = AccessShareLock;
|
||||||
ExecInitRangeTable(estate, list_make1(rte));
|
ExecInitRangeTable(estate, list_make1(rte), NIL /*TODO: fill properly*/);
|
||||||
|
|
||||||
#if PG_VERSION_NUM < PG_VERSION_14
|
#if PG_VERSION_NUM < PG_VERSION_14
|
||||||
ResultRelInfo *resultRelInfo = makeNode(ResultRelInfo);
|
ResultRelInfo *resultRelInfo = makeNode(ResultRelInfo);
|
||||||
|
|
Loading…
Reference in New Issue