Re: Multi-insert into a partitioned table with before insert row trigger causes server crash on latest HEAD

From: Ashutosh Sharma <ashu(dot)coek88(at)gmail(dot)com>
To: Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>
Cc: Andres Freund <andres(at)anarazel(dot)de>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, david(dot)rowley(at)2ndquadrant(dot)com
Subject: Re: Multi-insert into a partitioned table with before insert row trigger causes server crash on latest HEAD
Date: 2018-10-18 03:14:20
Message-ID: CAE9k0P=8qEZ+8srFza8+iYmeO+Zt1NF8GYethYG1nTWjDMv6Sw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Oct 18, 2018 at 12:15 AM Peter Eisentraut
<peter(dot)eisentraut(at)2ndquadrant(dot)com> wrote:
>
> On 16/10/2018 06:33, Ashutosh Sharma wrote:
> > I think, the root cause of this problem is that CopyFrom() is using
> > the stale value of *has_before_insert_row_trig* to determine if the
> > current partition is okay for multi-insert or not i.e.
> > has_before_insert_row_trig used to determine multi-insert condition
> > for the current partition actually belongs to old partition. I think,
> > *has_before_insert_row_trig* needs to updated before CopyFrom()
> > evaluates if the current partition is good to go for multi insert or
> > not. Attached is the patch based on this. I've also added the relevant
> > test-case for it. Peter, David, Could you please have a look into the
> > attached patch and share your thoughts. Thank you.
>
> I have committed your fix and test, moving some code around a bit. Thanks.
>

Thanks Peter.

--
With Regards,
Ashutosh Sharma
EnterpriseDB:http://www.enterprisedb.com

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Haribabu Kommi 2018-10-18 03:28:01 Re: Pluggable Storage - Andres's take
Previous Message Imai, Yoshikazu 2018-10-18 03:13:06 RE: Small performance tweak to run-time partition pruning