Robert Haas <robertmh...@gmail.com> writes: > On Tue, Oct 18, 2011 at 11:27 PM, Tom Lane <t...@sss.pgh.pa.us> wrote: >> One thing worth asking is why we're willing to violate half a dozen >> different coding rules if we see ProcDiePending, yet we're perfectly >> happy to rely on the client understanding a WARNING for the >> QueryCancelPending case. Another is whether this whole function isn't >> complete BS in the first place, since it appears to be coded on the >> obviously-false assumption that nothing it calls can throw elog(ERROR) >> --- and of course, if any of those functions do throw ERROR, all the >> argumentation here goes out the window.
> Well, there is a general problem that anything which throws an ERROR > too late in the commit path is Evil; and sync rep makes that worse to > the extent that it adds more stuff late in the commit path, but it > didn't invent the problem. What it did do is add stuff late in the > commit path that can block for a potentially unbounded period of time, > and I don't see that there are any solutions to that problem that > aren't somewhat grotty. No doubt, but fantasizing about what you are or are not controlling doesn't help ... and AFAICT this code is mostly fantasy. Anyway, I don't have a better proposal right offhand; will think about it. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers