On Thu, Sep 9, 2010 at 3:28 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Robert Haas <robertmhaas@gmail.com> writes:
>> We certainly now have MANY documented field complaints at least of the
>> exit-128-on-Windows problem, if not the more general
>> backend-exits-without-going-through-the-normal-cleanup-path problem.
>
> Right, which is why I still don't care to risk back-porting a fix for
> the latter.
It's hard to say what the safest option is, I think. There seem to be
basically three proposals on the table:
1. Back-port the dead-man switch, and ignore exit 128.
2. Don't back-port the dead-man switch, but ignore exit 128 anyway.
3. Revert to Magnus's original solution.
Each of these has advantages and disadvantages. The advantage of #1
is that it is safer than #2, and that is usually something we prize
fairly highly. The disadvantage of #1 is that it involves
back-porting the dead-man switch, but on the flip side that code has
been out in the field for over a year now in 8.4, and AFAIK we haven't
any trouble with it. Solution #3 should be approximately as safe as
solution #1, and has the advantage of touching less code in the back
branches, but on the other hand it is also NEW code. So I think it's
arguable which is the best solution. I think I like option #2 least
as among those choices, but it's a tough call.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise Postgres Company