Re: postgres crash on concurrent update of inheritance partitioned table

From: Oleksii Kliukin <alexk(at)hintbits(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, pgsql-bugs(at)lists(dot)postgresql(dot)org, ildus(at)adjust(dot)com, Chris Travers <chris(dot)travers(at)adjust(dot)com>, Nick Babadzhanian <nickb(at)adjust(dot)com>, julian(dot)schauder(at)gmx(dot)de
Subject: Re: postgres crash on concurrent update of inheritance partitioned table
Date: 2020-01-29 09:20:30
Message-ID: EDC3F2AC-53D1-407C-82AC-954A700FF059@hintbits.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:

> Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com> writes:
>> On Tue, Jan 28, 2020 at 05:17:14PM +0100, Oleksii Kliukin wrote:
>>> We have experienced a few crashes a day since upgrading to pg 12.1 last
>>> week, during the process of updating an inheritance-partitioned table by
>>> several concurrent sessions.
>
>> Yeah, I can reproduce it too. If I had to guess, I'd say it's another
>> bug due to
>> commit 3fb307bc4a76815f96fec28a0d1525ab3fbbcfb4
>> Author: Andres Freund <andres(at)anarazel(dot)de>
>> Date: Mon Sep 9 05:21:30 2019 -0700
>> Reorder EPQ work, to fix rowmark related bugs and improve efficiency.
>> which introduced relsubs_done et al, and perhaps did not get the life
>> cycle / resetting right. Not sure.
>
> Yup, that's it exactly. EvalPlanQualStart was expecting to reuse
> relsubs_rowmark and relsubs_done, but that storage will be recycled by
> EvalPlanQualEnd because it's in the query context of the recheckestate.
> AFAICS the re-use has no semantic value, so I just got rid of it.

Sounds good, thank you!

Regards,
Oleksii “Alex” Kliukin

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Julien Rouhaud 2020-01-29 11:15:59 Re: BUG #16109: Postgres planning time is high across version (Expose buffer usage during planning in EXPLAIN)
Previous Message Kyotaro Horiguchi 2020-01-29 03:02:22 Don't try fetching future segment of a TLI.