postgresql/src/include/nodes
Tom Lane 099e711b77 Undo unintentional ABI break in struct ResultRelInfo.
Commits aac2c9b4f et al. added a bool field to struct ResultRelInfo.
That's no problem in the master branch, but in released branches
care must be taken when modifying publicly-visible structs to avoid
an ABI break for extensions.  Frequently we solve that by adding the
new field at the end of the struct, and that's what was done here.
But ResultRelInfo has stricter constraints than just about any other
node type in Postgres.  Some executor APIs require extensions to index
into arrays of ResultRelInfo, which means that any change whatever in
sizeof(ResultRelInfo) causes a fatal ABI break.

Fortunately, this is easy to fix, because the new field can be
squeezed into available padding space instead --- indeed, that's where
it was put in master, so this fix also removes a cross-branch coding
variation.

Per report from Pavan Deolasee.  Patch v14-v17 only; earlier versions
did not gain the extra field, nor is there any problem in master.

Discussion: https://postgr.es/m/CABOikdNmVBC1LL6pY26dyxAS2f+gLZvTsNt=2XbcyG7WxXVBBQ@mail.gmail.com
2024-11-16 12:58:26 -05:00
..
bitmapset.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
execnodes.h Undo unintentional ABI break in struct ResultRelInfo. 2024-11-16 12:58:26 -05:00
extensible.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
lockoptions.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
makefuncs.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
memnodes.h Add function to log the memory contexts of specified backend process. 2021-04-06 13:44:15 +09:00
nodeFuncs.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
nodes.h Change the name of the Result Cache node to Memoize 2021-07-14 12:45:00 +12:00
params.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
parsenodes.h Fix calculation of which GENERATED columns need to be updated. 2023-01-05 14:12:17 -05:00
pathnodes.h Fix problems when a plain-inheritance parent table is excluded. 2023-10-24 14:48:34 -04:00
pg_list.h Avoid O(N^2) behavior in SyncPostCheckpoint(). 2021-11-02 11:31:54 -04:00
plannodes.h Fix problems when a plain-inheritance parent table is excluded. 2023-10-24 14:48:34 -04:00
primnodes.h Fix MULTIEXPR_SUBLINK with partitioned target tables, yet again. 2023-02-25 14:44:14 -05:00
print.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
readfuncs.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
replnodes.h Remove two_phase variable from CreateReplicationSlotCmd struct. 2021-06-07 09:32:06 +05:30
subscripting.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
supportnodes.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
tidbitmap.h Update copyright for 2021 2021-01-02 13:06:25 -05:00
value.h Update copyright for 2021 2021-01-02 13:06:25 -05:00