Re: Delay locking partitions during INSERT and UPDATE

From: David Rowley <david(dot)rowley(at)2ndquadrant(dot)com>
To: sho kato <kato-sho(at)jp(dot)fujitsu(dot)com>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, David Rowley <dgrowley(at)gmail(dot)com>
Subject: Re: Delay locking partitions during INSERT and UPDATE
Date: 2019-01-18 10:40:54
Message-ID: CAKJS1f9XoprwThePPW5+hqq84v+GVqBay=8kTRw-ZCh2r2_Qwg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, 18 Jan 2019 at 19:08, sho kato <kato-sho(at)jp(dot)fujitsu(dot)com> wrote:
> I confirmed that this patch improve performance by 10 times or more.

Thanks for testing this out.

> Also, I did make installcheck world, but test partition_prune failed.
> However, this test case failed even before applying a patch, so this patch is not a problem.
> One of the results is as follows.
>
> explain (analyze, costs off, summary off, timing off) execute ab_q1 (2, 2, 3);
> - QUERY PLAN
> ----------------------------------------------------------
> + QUERY PLAN
> +------------------------------------------------------
> Append (actual rows=0 loops=1)
> - Subplans Removed: 6
> -> Seq Scan on ab_a2_b1 (actual rows=0 loops=1)
> - Filter: ((a >= $1) AND (a <= $2) AND (b <= $3))
> + Filter: ((a >= 2) AND (a <= 2) AND (b <= 3))
> -> Seq Scan on ab_a2_b2 (actual rows=0 loops=1)
> - Filter: ((a >= $1) AND (a <= $2) AND (b <= $3))
> + Filter: ((a >= 2) AND (a <= 2) AND (b <= 3))
> -> Seq Scan on ab_a2_b3 (actual rows=0 loops=1)
> - Filter: ((a >= $1) AND (a <= $2) AND (b <= $3))
> -(8 rows)
> + Filter: ((a >= 2) AND (a <= 2) AND (b <= 3))
> +(7 rows)

Perhaps you're running with plan_cache_mode = force_custom_plan.
You'll likely need it set to auto for these to pass.

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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message David Rowley 2019-01-18 10:59:45 Re: [HACKERS] Removing [Merge]Append nodes which contain a single subpath
Previous Message Magnus Hagander 2019-01-18 10:38:51 Re: pgsql: Remove references to Majordomo