On 10 June 2018 at 09:00, Tom Lane <t...@sss.pgh.pa.us> wrote: > I wrote: >> One thing I'm wondering about is why in the world are PartitionPruneInfo >> and its subsidiary struct types declared in primnodes.h?
That may have been a legacy thing that accidentally wasn't changed from a previous version of the patch. I've now moved it to plannodes.h. > Oh, and while I'm bitching: it seems like there is hardly any part of > the partitioning code in which the comments aren't desperately in need > of a copy-editing pass. They are just chock-full of misspellings, > grammar that is faulty enough to make the meaning unclear, and/or > errors of fact. An example of the latter is the repeated claims that > the basic partitioning functions belong to the planner. Maybe that > was true at some stage of development; but AFAICS the logic in question > now lives in src/backend/partitioning/, which I would not think is > part of the planner. I've made a pass over the execPartition.c and partprune.c code attempting to resolve these issues. I have hopefully fixed them all, but I apologise if I've missed any. I also couldn't resist making a few other improvements to the code. -- David Rowley http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
run-time_pruning_for_exprs_v5.patch
Description: Binary data