diff options
author | Andres Freund <andres@anarazel.de> | 2018-10-15 15:24:33 -0700 |
---|---|---|
committer | Andres Freund <andres@anarazel.de> | 2018-10-15 18:23:25 -0700 |
commit | c5257345ef61922468cd9abd887c3cb6c38792cb (patch) | |
tree | c510b809c925fba6eb0b778b53b2345ea9168e50 /src/backend/executor/nodeModifyTable.c | |
parent | 9d906f1119de893a4ca533c5e7b97207a3aa963b (diff) | |
download | postgresql-c5257345ef61922468cd9abd887c3cb6c38792cb.tar.gz postgresql-c5257345ef61922468cd9abd887c3cb6c38792cb.zip |
Move TupleTableSlots boolean member into one flag variable.
There's several reasons for this change:
1) It reduces the total size of TupleTableSlot / reduces alignment
padding, making the commonly accessed members fit into a single
cacheline (but we currently do not force proper alignment, so
that's not yet guaranteed to be helpful)
2) Combining the booleans into a flag allows to combine read/writes
from memory.
3) With the upcoming slot abstraction changes, it allows to have core
and extended flags, in a memory efficient way.
Author: Ashutosh Bapat and Andres Freund
Discussion: https://postgr.es/m/20180220224318.gw4oe5jadhpmcdnm@alap3.anarazel.de
Diffstat (limited to 'src/backend/executor/nodeModifyTable.c')
-rw-r--r-- | src/backend/executor/nodeModifyTable.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/backend/executor/nodeModifyTable.c b/src/backend/executor/nodeModifyTable.c index 24beb40435e..528f58717e2 100644 --- a/src/backend/executor/nodeModifyTable.c +++ b/src/backend/executor/nodeModifyTable.c @@ -699,7 +699,7 @@ ExecDelete(ModifyTableState *mtstate, * RETURNING expressions might reference the tableoid column, so * initialize t_tableOid before evaluating them. */ - if (slot->tts_isempty) + if (TTS_EMPTY(slot)) ExecStoreAllNullTuple(slot); tuple = ExecMaterializeSlot(slot); tuple->t_tableOid = RelationGetRelid(resultRelationDesc); |