expression eval: Fix EEOP_JSON_CONSTRUCTOR and EEOP_JSONEXPR size.
authorAndres Freund <[email protected]>
Fri, 17 Jun 2022 01:33:42 +0000 (18:33 -0700)
committerAndres Freund <[email protected]>
Tue, 5 Jul 2022 18:25:08 +0000 (11:25 -0700)
commit67b26703b4152a30a91208e28a4b72b3abda5832
treefe8068d2e9ed3dc909ca097c167dd2356149af33
parent3f8148c256e067dc2e8929ed174671ba7dc3339c
expression eval: Fix EEOP_JSON_CONSTRUCTOR and EEOP_JSONEXPR size.

The new expression step types increased the size of ExprEvalStep by ~4 for all
types of expression steps, slowing down expression evaluation noticeably. Move
them out of line.

There's other issues with these expression steps, but addressing them is
largely independent of this aspect.

Author: Andres Freund <[email protected]>
Reviewed-By: Andrew Dunstan <[email protected]>
Discussion: https://postgr.es/m/20220616233130[email protected]
Backpatch: 15-
src/backend/executor/execExpr.c
src/backend/executor/execExprInterp.c
src/include/executor/execExpr.h
src/tools/pgindent/typedefs.list