Re: pgsql: First-draft release notes for 9.3.3.

From: Andres Freund <andres(at)2ndquadrant(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Cc: pgsql-committers(at)postgresql(dot)org
Subject: Re: pgsql: First-draft release notes for 9.3.3.
Date: 2014-02-16 09:23:10
Message-ID: 20140216092310.GL19470@alap3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Hi Tom,

Some comments on the release notes:

<!--
Author: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Branch: master [423e1211a] 2014-01-10 18:03:18 -0300
Branch: REL9_3_STABLE [a25c2b7c4] 2014-01-10 18:03:18 -0300
-->

<listitem>
<para>
Fix multixact freezing of tuples that predate
a <literal>pg_upgrade</> to 9.3
(&Aacute;lvaro Herrera)
</para>

<para>
This oversight would result in complaints such as <quote>ERROR:
MultiXactId 11415437 does no longer exist -- apparent wraparound</>.
</para>
</listitem>

I *think* this could only happen with changes that were committed
*after* 9.3.2 has been released. Alvaro, that's right, no?
Are such issues listed?

<!--
Author: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Branch: master [e8312b4f0] 2013-12-13 11:50:15 -0500
Branch: REL9_3_STABLE [478af9b79] 2013-12-13 11:50:25 -0500
-->

<listitem>
<para>
Prevent timeout interrupts from taking control away from mainline
code unless <varname>ImmediateInterruptOK</> is set
(Andres Freund, Tom Lane)
</para>

<para>
This was initially reported as a <quote>stuck spinlock</> failure,
but many other misbehaviors are possible after a statement timeout.
</para>
</listitem>

I think this needs to be featured more prominently. It's the reason I
have been asking for a new pointrelease... Issues I've seen this cause
*in production* on several sites since the the fix was committed
include:
* ERRORs regularly being promoted to PANICs on seemingly innocous errors
because CriticalSectionCount is out of whack.
* backends spuriously holding lwlocks which do not get cleaned up
because there's no LWLockReleaseAll() call unless
TRANS_INPROGRESS/START has been reached. That sometimes got "fixed" when
backends exited because there happens to be a LWLockReleaseAll() call
there. Symptoms included backends waiting on themselves and clusters
getting stuck until certain backends exited.
* backends that were unkillable because InterruptHoldoffCount whas out
of whack.
* corrupted heap pages

All but the last one were occurring repeatedly, and have completely
vanished since applying the fix. The last one I have seen only once, but
it seems like quite a comfortable explanation.

With the current explanation it's going to be hard to convince people
how important it is to upgrade from 9.3.2 to 9.3.3.

Thanks for assembling the notes,

Andres Freund

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

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Alvaro Herrera 2014-02-16 13:42:49 Re: pgsql: First-draft release notes for 9.3.3.
Previous Message Tom Lane 2014-02-16 05:41:13 pgsql: First-draft release notes for 9.3.3.