Re: [HACKERS] Runtime Partition Pruning

David Rowley <david.rowley@2ndquadrant.com>

From: David Rowley <david.rowley@2ndquadrant.com>
To: Jesper Pedersen <jesper.pedersen@redhat.com>
Cc: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>, Rajkumar Raghuwanshi <rajkumar.raghuwanshi@enterprisedb.com>, Beena Emerson <memissemerson@gmail.com>, Alvaro Herrera <alvherre@alvh.no-ip.org>, Robert Haas <robertmhaas@gmail.com>, amul sul <sulamul@gmail.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>, Dilip Kumar <dilipbalaut@gmail.com>
Date: 2018-04-05T02:01:46Z
Lists: pgsql-hackers

Attachments

On 5 April 2018 at 05:31, Jesper Pedersen <jesper.pedersen@redhat.com> wrote:
> Patch v49 with v18 (0001-0004) works. 0005 needs a rebase.

I've attached an updated patchset against Amit's v49 faster partition
pruning patch [1].

v49 should also be patched with [2] and [3].

I'm pretty happy with patches 0001 to 0004. At the moment I'm still a
bit unsure of 0005. I need to do a bit more sanity checking on it,
mostly around the changes in planner.c. Although I am keen to see 0005
make it into PG11 as it does make running larger numbers of partition
more usable for UPDATE/DELETE too. Amit's improvements are really good
alone, but unfortunately, anyone who's waiting on us speeding up the
partition pruning in SELECT queries is probably also waiting on us
doing the same for UPDATE/DELETE. So I do think 0005 is important for
PG11, providing it's correct, of course.

[1] https://www.postgresql.org/message-id/c5331ff6-8b31-0742-758e-bd7b9aeddf07%40lab.ntt.co.jp
[2] https://www.postgresql.org/message-id/CAKJS1f_ad%3DB9rVf5dPD27%3DxTN1Ob7xJi6N4BFBNytj93rCPqzg%40mail.gmail.com
[3] https://www.postgresql.org/message-id/3eedafaa-840f-bf72-2fa9-dadb0852e959%40redhat.com

-- 
 David Rowley                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

Commits

  1. Initialize ExprStates once in run-time partition pruning

  2. Add bms_prev_member function

  3. Support partition pruning at execution time

  4. Document partprune.c a little better

  5. Fix crash in pg_replication_slot_advance

  6. Add parallel-aware hash joins.

  7. Fix typo.

  8. Allow --with-bonjour to work with non-macOS implementations of Bonjour.

  9. Mention need for --no-inc-recursive in rsync command