pgsql: Refactor LogicalTapeSet/LogicalTape interface.
| От | Heikki Linnakangas |
|---|---|
| Тема | pgsql: Refactor LogicalTapeSet/LogicalTape interface. |
| Дата | |
| Msg-id | E1mcRXo-0000e8-Vs@gemulon.postgresql.org обсуждение исходный текст |
| Список | pgsql-committers |
Refactor LogicalTapeSet/LogicalTape interface. All the tape functions, like LogicalTapeRead and LogicalTapeWrite, now take a LogicalTape as argument, instead of LogicalTapeSet+tape number. You can create any number of LogicalTapes in a single LogicalTapeSet, and you don't need to decide the number upfront, when you create the tape set. This makes the tape management in hash agg spilling in nodeAgg.c simpler. Discussion: https://www.postgresql.org/message-id/420a0ec7-602c-d406-1e75-1ef7ddc58d83%40iki.fi Reviewed-by: Peter Geoghegan, Zhihong Yu, John Naylor Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/c4649cce39a41b27db874e75ddd47adaec1b0ea4 Modified Files -------------- src/backend/executor/nodeAgg.c | 187 ++++----------- src/backend/utils/sort/logtape.c | 456 +++++++++++++++---------------------- src/backend/utils/sort/tuplesort.c | 229 +++++++++---------- src/include/nodes/execnodes.h | 3 +- src/include/utils/logtape.h | 37 ++- 5 files changed, 359 insertions(+), 553 deletions(-)
В списке pgsql-committers по дате отправления: