Centralize executor-related partitioning code.
Robert Haas <rhaas@postgresql.org>
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
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/catalog/partition.c | modified | +80 −375 |
| src/backend/commands/copy.c | modified | +1 −0 |
| src/backend/executor/execMain.c | modified | +3 −263 |
| src/backend/executor/execPartition.c | added | +560 −0 |
| src/backend/executor/Makefile | modified | +1 −1 |
| src/backend/executor/nodeModifyTable.c | modified | +1 −0 |
| src/include/catalog/partition.h | modified | +4 −44 |
| src/include/executor/execPartition.h | added | +65 −0 |
| src/include/executor/executor.h | modified | +2 −12 |
Discussion
- moving some partitioning code to executor 7 messages · 2017-09-14 → 2017-11-16