v23-0009-Remove-ss_current-prefix-from-ss_currentScanDesc.patch
text/x-patch
Filename: v23-0009-Remove-ss_current-prefix-from-ss_currentScanDesc.patch
Type: text/x-patch
Part: 6
Patch
Format: format-patch
Series: patch v23-0009
Subject: Remove ss_current prefix from ss_currentScanDesc in nodes
| File | + | − |
|---|---|---|
| src/backend/executor/nodeBitmapHeapscan.c | 5 | 5 |
| src/backend/executor/nodeSamplescan.c | 7 | 7 |
| src/backend/executor/nodeSeqscan.c | 7 | 7 |
| src/backend/executor/nodeTidrangescan.c | 4 | 4 |
| src/backend/executor/nodeTidscan.c | 9 | 9 |
| src/include/nodes/execnodes.h | 8 | 8 |
From 6f721fa4f6f2c25ae145ad417c79b20f5219ea27 Mon Sep 17 00:00:00 2001
From: Melanie Plageman <melanieplageman@gmail.com>
Date: Tue, 11 Jun 2024 08:44:50 -0400
Subject: [PATCH v23 09/19] Remove ss_current prefix from ss_currentScanDesc in
nodes
A previous commit pushed down the current scan descriptor from the
generic ScanState into the specialized scan states. The naming
convention was left as is to make the diff easier to understand. Rename
it, as the ss_ prefix is no longer correct once this member is in the
other node structs.
---
src/backend/executor/nodeBitmapHeapscan.c | 10 +++++-----
src/backend/executor/nodeSamplescan.c | 14 +++++++-------
src/backend/executor/nodeSeqscan.c | 14 +++++++-------
src/backend/executor/nodeTidrangescan.c | 8 ++++----
src/backend/executor/nodeTidscan.c | 18 +++++++++---------
src/include/nodes/execnodes.h | 16 ++++++++--------
6 files changed, 40 insertions(+), 40 deletions(-)
diff --git a/src/backend/executor/nodeBitmapHeapscan.c b/src/backend/executor/nodeBitmapHeapscan.c
index 9a4a050a7d..d5e8557397 100644
--- a/src/backend/executor/nodeBitmapHeapscan.c
+++ b/src/backend/executor/nodeBitmapHeapscan.c
@@ -78,7 +78,7 @@ BitmapHeapNext(BitmapHeapScanState *node)
*/
econtext = node->ss.ps.ps_ExprContext;
slot = node->ss.ss_ScanTupleSlot;
- scan = node->ss_currentScanDesc;
+ scan = node->scandesc;
/*
* If we haven't yet performed the underlying index scan, do it, and begin
@@ -162,7 +162,7 @@ BitmapHeapNext(BitmapHeapScanState *node)
NULL,
need_tuples);
- node->ss_currentScanDesc = scan;
+ node->scandesc = scan;
}
tbm_begin_iterate(&scan->tbmiterator, node->tbm, dsa,
@@ -542,7 +542,7 @@ ExecReScanBitmapHeapScan(BitmapHeapScanState *node)
{
PlanState *outerPlan = outerPlanState(node);
- TableScanDesc scan = node->ss_currentScanDesc;
+ TableScanDesc scan = node->scandesc;
if (scan)
{
@@ -552,7 +552,7 @@ ExecReScanBitmapHeapScan(BitmapHeapScanState *node)
tbm_end_iterate(&scan->tbmiterator);
/* rescan to release any page pin */
- table_rescan(node->ss_currentScanDesc, NULL);
+ table_rescan(node->scandesc, NULL);
}
/* End iteration on iterators saved in the node . */
@@ -595,7 +595,7 @@ ExecEndBitmapHeapScan(BitmapHeapScanState *node)
/*
* extract information from the node
*/
- scanDesc = node->ss_currentScanDesc;
+ scanDesc = node->scandesc;
/*
* close down subplans
diff --git a/src/backend/executor/nodeSamplescan.c b/src/backend/executor/nodeSamplescan.c
index d15bf249d3..581bd3ed3b 100644
--- a/src/backend/executor/nodeSamplescan.c
+++ b/src/backend/executor/nodeSamplescan.c
@@ -123,7 +123,7 @@ ExecInitSampleScan(SampleScan *node, EState *estate, int eflags)
eflags);
/* we won't set up the HeapScanDesc till later */
- scanstate->ss_currentScanDesc = NULL;
+ scanstate->scandesc = NULL;
/* and create slot with appropriate rowtype */
ExecInitScanTupleSlot(estate, &scanstate->ss,
@@ -187,8 +187,8 @@ ExecEndSampleScan(SampleScanState *node)
/*
* close heap scan
*/
- if (node->ss_currentScanDesc)
- table_endscan(node->ss_currentScanDesc);
+ if (node->scandesc)
+ table_endscan(node->scandesc);
}
/* ----------------------------------------------------------------
@@ -289,9 +289,9 @@ tablesample_init(SampleScanState *scanstate)
allow_sync = (tsm->NextSampleBlock == NULL);
/* Now we can create or reset the HeapScanDesc */
- if (scanstate->ss_currentScanDesc == NULL)
+ if (scanstate->scandesc == NULL)
{
- scanstate->ss_currentScanDesc =
+ scanstate->scandesc =
table_beginscan_sampling(scanstate->ss.ss_currentRelation,
scanstate->ss.ps.state->es_snapshot,
0, NULL,
@@ -301,7 +301,7 @@ tablesample_init(SampleScanState *scanstate)
}
else
{
- table_rescan_set_params(scanstate->ss_currentScanDesc, NULL,
+ table_rescan_set_params(scanstate->scandesc, NULL,
scanstate->use_bulkread,
allow_sync,
scanstate->use_pagemode);
@@ -319,7 +319,7 @@ tablesample_init(SampleScanState *scanstate)
static TupleTableSlot *
tablesample_getnext(SampleScanState *scanstate)
{
- TableScanDesc scan = scanstate->ss_currentScanDesc;
+ TableScanDesc scan = scanstate->scandesc;
TupleTableSlot *slot = scanstate->ss.ss_ScanTupleSlot;
ExecClearTuple(slot);
diff --git a/src/backend/executor/nodeSeqscan.c b/src/backend/executor/nodeSeqscan.c
index 89f5e8c80d..5aaad64595 100644
--- a/src/backend/executor/nodeSeqscan.c
+++ b/src/backend/executor/nodeSeqscan.c
@@ -57,7 +57,7 @@ SeqNext(SeqScanState *node)
/*
* get information from the estate and scan state
*/
- scandesc = node->ss_currentScanDesc;
+ scandesc = node->scandesc;
estate = node->ss.ps.state;
direction = estate->es_direction;
slot = node->ss.ss_ScanTupleSlot;
@@ -71,7 +71,7 @@ SeqNext(SeqScanState *node)
scandesc = table_beginscan(node->ss.ss_currentRelation,
estate->es_snapshot,
0, NULL);
- node->ss_currentScanDesc = scandesc;
+ node->scandesc = scandesc;
}
/*
@@ -188,7 +188,7 @@ ExecEndSeqScan(SeqScanState *node)
/*
* get information from node
*/
- scanDesc = node->ss_currentScanDesc;
+ scanDesc = node->scandesc;
/*
* close heap scan
@@ -213,7 +213,7 @@ ExecReScanSeqScan(SeqScanState *node)
{
TableScanDesc scan;
- scan = node->ss_currentScanDesc;
+ scan = node->scandesc;
if (scan != NULL)
table_rescan(scan, /* scan desc */
@@ -264,7 +264,7 @@ ExecSeqScanInitializeDSM(SeqScanState *node,
pscan,
estate->es_snapshot);
shm_toc_insert(pcxt->toc, node->ss.ps.plan->plan_node_id, pscan);
- node->ss_currentScanDesc =
+ node->scandesc =
table_beginscan_parallel(node->ss.ss_currentRelation, pscan);
}
@@ -280,7 +280,7 @@ ExecSeqScanReInitializeDSM(SeqScanState *node,
{
ParallelTableScanDesc pscan;
- pscan = node->ss_currentScanDesc->rs_parallel;
+ pscan = node->scandesc->rs_parallel;
table_parallelscan_reinitialize(node->ss.ss_currentRelation, pscan);
}
@@ -297,6 +297,6 @@ ExecSeqScanInitializeWorker(SeqScanState *node,
ParallelTableScanDesc pscan;
pscan = shm_toc_lookup(pwcxt->toc, node->ss.ps.plan->plan_node_id, false);
- node->ss_currentScanDesc =
+ node->scandesc =
table_beginscan_parallel(node->ss.ss_currentRelation, pscan);
}
diff --git a/src/backend/executor/nodeTidrangescan.c b/src/backend/executor/nodeTidrangescan.c
index bc523a5d77..3a2ba169e9 100644
--- a/src/backend/executor/nodeTidrangescan.c
+++ b/src/backend/executor/nodeTidrangescan.c
@@ -227,7 +227,7 @@ TidRangeNext(TidRangeScanState *node)
/*
* extract necessary information from TID scan node
*/
- scandesc = node->ss_currentScanDesc;
+ scandesc = node->scandesc;
estate = node->ss.ps.state;
slot = node->ss.ss_ScanTupleSlot;
direction = estate->es_direction;
@@ -244,7 +244,7 @@ TidRangeNext(TidRangeScanState *node)
estate->es_snapshot,
&node->trss_mintid,
&node->trss_maxtid);
- node->ss_currentScanDesc = scandesc;
+ node->scandesc = scandesc;
}
else
{
@@ -326,7 +326,7 @@ ExecReScanTidRangeScan(TidRangeScanState *node)
void
ExecEndTidRangeScan(TidRangeScanState *node)
{
- TableScanDesc scan = node->ss_currentScanDesc;
+ TableScanDesc scan = node->scandesc;
if (scan != NULL)
table_endscan(scan);
@@ -375,7 +375,7 @@ ExecInitTidRangeScan(TidRangeScan *node, EState *estate, int eflags)
currentRelation = ExecOpenScanRelation(estate, node->scan.scanrelid, eflags);
tidrangestate->ss.ss_currentRelation = currentRelation;
- tidrangestate->ss_currentScanDesc = NULL; /* no table scan here */
+ tidrangestate->scandesc = NULL; /* no table scan here */
/*
* get the scan type from the relation descriptor.
diff --git a/src/backend/executor/nodeTidscan.c b/src/backend/executor/nodeTidscan.c
index f08bc7daa8..becf027467 100644
--- a/src/backend/executor/nodeTidscan.c
+++ b/src/backend/executor/nodeTidscan.c
@@ -145,11 +145,11 @@ TidListEval(TidScanState *tidstate)
* the size of the table), so it makes sense to delay that until needed -
* the node might never get executed.
*/
- if (tidstate->ss_currentScanDesc == NULL)
- tidstate->ss_currentScanDesc =
+ if (tidstate->scandesc == NULL)
+ tidstate->scandesc =
table_beginscan_tid(tidstate->ss.ss_currentRelation,
tidstate->ss.ps.state->es_snapshot);
- scan = tidstate->ss_currentScanDesc;
+ scan = tidstate->scandesc;
/*
* We initialize the array with enough slots for the case that all quals
@@ -336,7 +336,7 @@ TidNext(TidScanState *node)
if (node->tss_TidList == NULL)
TidListEval(node);
- scan = node->ss_currentScanDesc;
+ scan = node->scandesc;
tidList = node->tss_TidList;
numTids = node->tss_NumTids;
@@ -453,8 +453,8 @@ ExecReScanTidScan(TidScanState *node)
node->tss_TidPtr = -1;
/* not really necessary, but seems good form */
- if (node->ss_currentScanDesc)
- table_rescan(node->ss_currentScanDesc, NULL);
+ if (node->scandesc)
+ table_rescan(node->scandesc, NULL);
ExecScanReScan(&node->ss);
}
@@ -469,8 +469,8 @@ ExecReScanTidScan(TidScanState *node)
void
ExecEndTidScan(TidScanState *node)
{
- if (node->ss_currentScanDesc)
- table_endscan(node->ss_currentScanDesc);
+ if (node->scandesc)
+ table_endscan(node->scandesc);
}
/* ----------------------------------------------------------------
@@ -518,7 +518,7 @@ ExecInitTidScan(TidScan *node, EState *estate, int eflags)
currentRelation = ExecOpenScanRelation(estate, node->scan.scanrelid, eflags);
tidstate->ss.ss_currentRelation = currentRelation;
- tidstate->ss_currentScanDesc = NULL; /* no heap scan here */
+ tidstate->scandesc = NULL; /* no heap scan here */
/*
* get the scan type from the relation descriptor.
diff --git a/src/include/nodes/execnodes.h b/src/include/nodes/execnodes.h
index c4907d624d..672dd9f717 100644
--- a/src/include/nodes/execnodes.h
+++ b/src/include/nodes/execnodes.h
@@ -1572,7 +1572,7 @@ typedef struct ScanState
typedef struct SeqScanState
{
ScanState ss; /* its first field is NodeTag */
- struct TableScanDescData *ss_currentScanDesc; /* current scan descriptor */
+ struct TableScanDescData *scandesc; /* current scan descriptor */
Size pscan_len; /* size of parallel heap scan descriptor */
} SeqScanState;
@@ -1583,7 +1583,7 @@ typedef struct SeqScanState
typedef struct SampleScanState
{
ScanState ss;
- struct TableScanDescData *ss_currentScanDesc; /* current scan descriptor */
+ struct TableScanDescData *scandesc; /* current scan descriptor */
List *args; /* expr states for TABLESAMPLE params */
ExprState *repeatable; /* expr state for REPEATABLE expr */
/* use struct pointer to avoid including tsmapi.h here */
@@ -1793,7 +1793,7 @@ typedef struct ParallelBitmapHeapState
/* ----------------
* BitmapHeapScanState information
*
- * currentScanDesc current scan descriptor for scan (NULL if none)
+ * scandesc current scan descriptor for scan (NULL if none)
* bitmapqualorig execution state for bitmapqualorig expressions
* tbm bitmap obtained from child index scan(s)
* pvmbuffer buffer for visibility-map lookups of prefetched pages
@@ -1813,7 +1813,7 @@ typedef struct ParallelBitmapHeapState
typedef struct BitmapHeapScanState
{
ScanState ss; /* its first field is NodeTag */
- struct TableScanDescData *ss_currentScanDesc;
+ struct TableScanDescData *scandesc;
ExprState *bitmapqualorig;
TIDBitmap *tbm;
Buffer pvmbuffer;
@@ -1833,7 +1833,7 @@ typedef struct BitmapHeapScanState
/* ----------------
* TidScanState information
*
- * currentScanDesc current scan descriptor for scan (NULL if none)
+ * scandesc current scan descriptor for scan (NULL if none)
* tidexprs list of TidExpr structs (see nodeTidscan.c)
* isCurrentOf scan has a CurrentOfExpr qual
* NumTids number of tids in this scan
@@ -1844,7 +1844,7 @@ typedef struct BitmapHeapScanState
typedef struct TidScanState
{
ScanState ss; /* its first field is NodeTag */
- struct TableScanDescData *ss_currentScanDesc;
+ struct TableScanDescData *scandesc;
List *tss_tidexprs;
bool tss_isCurrentOf;
int tss_NumTids;
@@ -1855,7 +1855,7 @@ typedef struct TidScanState
/* ----------------
* TidRangeScanState information
*
- * currentScanDesc current scan descriptor for scan (NULL if none)
+ * scandesc current scan descriptor for scan (NULL if none)
* trss_tidexprs list of TidOpExpr structs (see nodeTidrangescan.c)
* trss_mintid the lowest TID in the scan range
* trss_maxtid the highest TID in the scan range
@@ -1865,7 +1865,7 @@ typedef struct TidScanState
typedef struct TidRangeScanState
{
ScanState ss; /* its first field is NodeTag */
- struct TableScanDescData *ss_currentScanDesc;
+ struct TableScanDescData *scandesc;
List *trss_tidexprs;
ItemPointerData trss_mintid;
ItemPointerData trss_maxtid;
--
2.34.1