Re: walreceiver is uninterruptible on win32
Magnus Hagander <magnus@hagander.net>
From: Magnus Hagander <magnus@hagander.net>
To: Fujii Masao <masao.fujii@gmail.com>
Cc: Robert Haas <robertmhaas@gmail.com>, Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>, Joe Conway <mail@joeconway.com>
Date: 2010-04-19T14:11:29Z
Lists: pgsql-hackers
On Fri, Apr 16, 2010 at 09:03, Fujii Masao <masao.fujii@gmail.com> wrote: > On Thu, Apr 15, 2010 at 11:26 PM, Robert Haas <robertmhaas@gmail.com> wrote: >> I have to admit to finding this confusing. According to the comments: >> >> + /* >> + * Don't emulate the PQexec()'s behavior of returning the last >> + * result when there are many, since walreceiver never sends a >> + * query returning multiple results. >> + */ >> >> ...but it looks like the code actually is implementing some sort of >> loop-that-returns-the-last result. > > Yeah, it's not a very accurate description. And I found another problem: > libpqrcv_PQexec() ends as soon as an error result arrives even if its > state has not been PGASYNC_IDLE yet. > > So I changed libpqrcv_PQexec() so that it emulates the PQexec()'s behavior > except the concatenation of error messages. How about the attached patch? Applied with only minor stylistic changes. Thanks! -- Magnus Hagander Me: http://www.hagander.net/ Work: http://www.redpill-linpro.com/