Add an "argisrow" field to NullTest nodes, following a plan made way back in
Tom Lane <tgl@sss.pgh.pa.us>
Add an "argisrow" field to NullTest nodes, following a plan made way back in 8.2beta but never carried out. This avoids repetitive tests of whether the argument is of scalar or composite type. Also, be a bit more paranoid about composite arguments in some places where we previously weren't checking.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/executor/execQual.c | modified | +2 −3 |
| src/backend/nodes/copyfuncs.c | modified | +2 −1 |
| src/backend/nodes/equalfuncs.c | modified | +2 −1 |
| src/backend/nodes/outfuncs.c | modified | +2 −1 |
| src/backend/nodes/readfuncs.c | modified | +2 −1 |
| src/backend/optimizer/path/indxpath.c | modified | +3 −2 |
| src/backend/optimizer/plan/planagg.c | modified | +4 −1 |
| src/backend/optimizer/util/clauses.c | modified | +7 −5 |
| src/backend/optimizer/util/plancat.c | modified | +2 −1 |
| src/backend/optimizer/util/predtest.c | modified | +6 −4 |
| src/backend/parser/parse_expr.c | modified | +2 −1 |
| src/include/catalog/catversion.h | modified | +2 −2 |
| src/include/nodes/execnodes.h | modified | +2 −3 |
| src/include/nodes/primnodes.h | modified | +3 −4 |