Remove some unnecessary fields from executor nodes.

JsonExprState.input_finfo is only assigned to, never read, and
it's really fairly useless since the value can be gotten out of
the adjacent input_fcinfo field.  Let's remove it before someone
starts to depend on it.

While here, also remove TidScanState.tss_htup and AggState.combinedproj,
which are referenced nowhere.  Those should have been removed by the
commits that caused them to become disused, but were not.

I don't think a catversion bump is necessary here, since plan trees
are never stored on disk.

Matthias van de Meent

Discussion: https://postgr.es/m/CAEze2WjsY4d0TBymLNGK4zpttUcg_YZaTjyWz2VfDUV6YH8wXQ@mail.gmail.com
This commit is contained in:
Tom Lane 2024-04-23 12:55:26 -04:00
parent 598e0114a3
commit b7d35d393e
2 changed files with 0 additions and 5 deletions

View File

@ -4393,7 +4393,6 @@ ExecInitJsonExpr(JsonExpr *jsexpr, ExprState *state,
fcinfo->args[2].isnull = false;
fcinfo->context = (Node *) escontext;
jsestate->input_finfo = finfo;
jsestate->input_fcinfo = fcinfo;
}

View File

@ -1070,7 +1070,6 @@ typedef struct JsonExprState
* RETURNING type input function invocation info when
* JsonExpr.use_io_coercion is true.
*/
FmgrInfo *input_finfo;
FunctionCallInfo input_fcinfo;
/*
@ -1835,7 +1834,6 @@ typedef struct BitmapHeapScanState
* NumTids number of tids in this scan
* TidPtr index of currently fetched tid
* TidList evaluated item pointers (array of size NumTids)
* htup currently-fetched tuple, if any
* ----------------
*/
typedef struct TidScanState
@ -1846,7 +1844,6 @@ typedef struct TidScanState
int tss_NumTids;
int tss_TidPtr;
ItemPointerData *tss_TidList;
HeapTupleData tss_htup;
} TidScanState;
/* ----------------
@ -2530,7 +2527,6 @@ typedef struct AggState
#define FIELDNO_AGGSTATE_ALL_PERGROUPS 53
AggStatePerGroup *all_pergroups; /* array of first ->pergroups, than
* ->hash_pergroup */
ProjectionInfo *combinedproj; /* projection machinery */
SharedAggInfo *shared_info; /* one entry per worker */
} AggState;