On Wed, Feb 12, 2025 at 8:53 PM Amit Langote <amitlangot...@gmail.com> wrote: > On Thu, Feb 6, 2025 at 11:35 AM Amit Langote <amitlangot...@gmail.com> wrote: > > Per cfbot-ci, the new test case output in 0002 needed to be updated. > > > > I plan to push 0001 tomorrow, barring any objections. > > I pushed that last Friday. With bb3ec16e, d47cbf47, and cbc12791 now in: > > * Pruning information is now stored separately from parent plan nodes > in PlannedStmt. > > * Initial runtime pruning occurs as a separate step, independent of > and before plan initialization in InitPlan(). > > * The RT indexes of unprunable relations and those of partitions that > survive initial pruning are stored in a global bitmapset in EState, > allowing us to avoid work that was previously done for pruned > partitions. This was difficult before because initial pruning wasn’t > performed before the parent plan node was initialized, meaning that > the work we aimed to save had already been done. > > The final remaining piece is to skip taking locks on partitions pruned > during initial pruning, and the attached patch addresses that. > > I’d like to commit the patch next week, barring objections.
I pushed the final piece yesterday. Thank you all who have commented on this thread, reviewed the patches in its various incarnations, and offered advice here or offlist. -- Thanks, Amit Langote