Robert Haas <robertmhaas@gmail.com> writes:
> 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.
Well, I don't want to use Magnus' original solution in 8.4 or up,
so I don't like #3 much: it's not only new code but code which would
get very limited testing. And I don't believe that the risk of
unexpected use of exit(128) is large enough to make #1 preferable to #2.
YMMV.
regards, tom lane