Pass ColumnarScanDesc to ColumnarScanChunkGroupsFiltered

pull/4818/head
Onur Tirtir 2021-08-20 18:18:11 +03:00
parent 4fb05efabb
commit 9cb5ef5007
3 changed files with 9 additions and 6 deletions

View File

@ -821,11 +821,11 @@ static void
ColumnarScan_ExplainCustomScan(CustomScanState *node, List *ancestors,
ExplainState *es)
{
TableScanDesc scanDesc = node->ss.ss_currentScanDesc;
ColumnarScanDesc columnarScanDesc = (ColumnarScanDesc) node->ss.ss_currentScanDesc;
if (scanDesc != NULL)
if (columnarScanDesc != NULL)
{
int64 chunkGroupsFiltered = ColumnarScanChunkGroupsFiltered(scanDesc);
int64 chunkGroupsFiltered = ColumnarScanChunkGroupsFiltered(columnarScanDesc);
ExplainPropertyInteger("Columnar Chunk Groups Removed by Filter", NULL,
chunkGroupsFiltered, es);
}

View File

@ -1843,9 +1843,8 @@ columnar_tableam_finish()
* Get the number of chunks filtered out during the given scan.
*/
int64
ColumnarScanChunkGroupsFiltered(TableScanDesc scanDesc)
ColumnarScanChunkGroupsFiltered(ColumnarScanDesc columnarScanDesc)
{
ColumnarScanDesc columnarScanDesc = (ColumnarScanDesc) scanDesc;
ColumnarReadState *readState = columnarScanDesc->cs_readState;
/* readState is initialized lazily */

View File

@ -42,6 +42,10 @@
#define VALID_BLOCKNUMBERS ((uint64) (MaxBlockNumber + 1))
struct ColumnarScanDescData;
typedef struct ColumnarScanDescData *ColumnarScanDesc;
const TableAmRoutine * GetColumnarTableAmRoutine(void);
extern void columnar_tableam_init(void);
extern void columnar_tableam_finish(void);
@ -51,7 +55,7 @@ extern TableScanDesc columnar_beginscan_extended(Relation relation, Snapshot sna
ParallelTableScanDesc parallel_scan,
uint32 flags, Bitmapset *attr_needed,
List *scanQual);
extern int64 ColumnarScanChunkGroupsFiltered(TableScanDesc scanDesc);
extern int64 ColumnarScanChunkGroupsFiltered(ColumnarScanDesc columnarScanDesc);
extern bool ColumnarSupportsIndexAM(char *indexAMName);
extern bool IsColumnarTableAmTable(Oid relationId);
extern TableDDLCommand * ColumnarGetTableOptionsDDL(Oid relationId);