Remove some unnecessary fields from executor nodes.
authorTom Lane
Tue, 23 Apr 2024 16:55:26 +0000 (12:55 -0400)
committerTom Lane
Tue, 23 Apr 2024 16:55:26 +0000 (12:55 -0400)
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

src/backend/executor/execExpr.c
src/include/nodes/execnodes.h

index eb5ac208248290129951f40a698efa3bb0ef0ad5..b9ebc827a74bcc739218feec718e1de0660ae882 100644 (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;
    }
 
index c1a65bad2a988363f7110712e7b52da94d26a2fc..d927ac44a82bca1d46bb8877c8c422ce71d28d9b 100644 (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;