[pgpool-general: 3627] Re: PGPool sending r/w queries to wrong DB node
Pablo Sanchez
pablo at blueoakdb.com
Wed Apr 15 22:22:23 JST 2015
[ Comments below, in-line ]
On 04/15/2015 07:01 AM, Yugo Nagata wrote:
> Hi,
Hi Yugo,
> How did you terminate the DELETE? If you terminated by
> pg_terminal_backend(), this caused the degerenation. I confirmed
> this by issuing "SELECT pg_sleep(100)" through pgpool-II.
Aha! I did terminate the DELETEs as follows:
SELECT pg_terminate_backend(pid)
FROM pg_stat_activity
WHERE query LIKE 'delete%'
AND state ='active';
At the time we had this "pgpool.conf" setting:
fail_over_on_backend_error = on
As I mentioned earlier in the thread, after the error I've changed it
to:
fail_over_on_backend_error = off
With "fail_over_on_backend_error = off", I tried the Unit Test you
provided and pgpool did not degenerate. :)
Does pg_cancel_backend() also cause a degeneration?
In an effort to improve the documentation ... the current pgpool-II
user manual doesn't mention anything about a pg_terminate_backend()
causing a failover.
http://www.pgpool.net/docs/latest/pgpool-en.html:
Perhaps we can append to the "fail_over_on_backend_error" section the
following:
fail_over_on_backend_error V2.3 -
... old text here ...
CAUTION: when set to /on/, a pg_terminate_backend() or
pg_cancel_backend() will cause a failover.
Cheers,
--
Pablo Sanchez - Blueoak Database Engineering, Inc
Ph: 819.459.1926 Blog: http://pablo-blog.blueoakdb.com
iNum: 883.5100.0990.1054
More information about the pgpool-general
mailing list