[pgpool-committers: 989] pgpool: Fix do_query() not to hang when PostgreSQL returns an error.

Tatsuo Ishii ishii at postgresql.org
Thu May 16 13:27:05 JST 2013

Fix do_query() not to hang when PostgreSQL returns an error.

The typical symptom is "I see SELECT is keep on running according to
pg_stat_activity".  To fix this pgpool-II just exits the process and
kill the existig connection.  This is not gentle but at this point I
believe this is the best solution. Here is an excerpt from source
				 * This is fatal. Because: If we operate extended
				 * query, backend would not accept subsequent commands
				 * until "sync" message issued. However, if sync
				 * message issued, unnamed statement/unnamed portal
				 * will disappear and will cause lots of problems.  If
				 * we do not operate extended query, ongoing
				 * transaction is aborted, and subsequent query would
				 * not accepted.  In summary there's no transparent
				 * way for frontend to handle error case. The only way
				 * is closing this session.



Modified Files
pool_process_query.c |   16 +++++++++++++++-
1 files changed, 15 insertions(+), 1 deletions(-)

More information about the pgpool-committers mailing list