Thread: pgsql: Centralize executor-related partitioning code.
Centralize executor-related partitioning code. Some code is moved from partition.c, which has grown very quickly lately; splitting the executor parts out might help to keep it from getting totally out of control. Other code is moved from execMain.c. All is moved to a new file execPartition.c. get_partition_for_tuple now has a new interface that more clearly separates executor concerns from generic concerns. Amit Langote. A slight comment tweak by me. Discussion: http://postgr.es/m/1f0985f8-3b61-8bc4-4350-baa6d804cb6d@lab.ntt.co.jp Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/4e5fe9ad19e14af360de7970caa8b150436c9dec Modified Files -------------- src/backend/catalog/partition.c | 455 +++++---------------------- src/backend/commands/copy.c | 1 + src/backend/executor/Makefile | 2 +- src/backend/executor/execMain.c | 266 +--------------- src/backend/executor/execPartition.c | 560 +++++++++++++++++++++++++++++++++ src/backend/executor/nodeModifyTable.c | 1 + src/include/catalog/partition.h | 48 +-- src/include/executor/execPartition.h | 65 ++++ src/include/executor/executor.h | 14 +- 9 files changed, 717 insertions(+), 695 deletions(-)