Re: shm_mq fix for non-blocking mode

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: shm_mq fix for non-blocking mode
Date: 2015-11-03 15:00:06
Message-ID: CA+Tgmob1_E6dFHknooJG_VNjicSt6fonAaDVgbrh7QQm2uVfzw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Oct 22, 2015 at 10:00 PM, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>> ...and so I've committed it and back-patched to 9.4.
>
> Sigh. This was buggy; I have no idea how it survived my earlier testing.
>
> I will go fix it. Sorry.

Gah! That, too, turned out to be buggy, although in a considerably
more subtle way. I've pushed another fix with a detailed comment and
an explanatory commit message that hopefully squashes this problem for
good. Combined with the fix at
http://www.postgresql.org/message-id/CA+TgmoZzv3u9trsvcAO+-OtXbsz_u+A5Q8X-_B+VZceHhtzTmA@mail.gmail.com
this seems to squash occasional complaints about workers "dying
unexpectedly" when they really had done no such thing.

The test code I used to find these problems is attached. I compiled
and installed the parallel_dummy extension, did pgbench -i -s 100, and
then ran this:

while psql -c "select parallel_count('pgbench_accounts', 4)"; do sleep 1; done

Without these fixes, this can hang or error out, but with these fixes,
it works fine.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

Attachment Content-Type Size
parallel-dummy-2015-11-03.patch text/x-diff 5.6 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Bill Moran 2015-11-03 15:04:31 RFC/WIP: adding new configuration options to TOAST
Previous Message Robert Haas 2015-11-03 14:55:33 Re: ParallelContexts can get confused about which worker is which