pgpool2.git / summary / log / commit / refs

commit    cfa993268b4af00b9ba5bae59ea4fb78a59c0acb
Author:   Toshihiro Kitagawa <kitagawa at sraoss.co.jp>
Date:     Fri Oct 15 03:10:56 2010 +0000

    Fix ErrorResponse so that it checks existence of a session context.


pool_proto2.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pool_proto2.c b/pool_proto2.c index cf6c5f0a9..4cd1d76ba 100644 --- a/pool_proto2.c +++ b/pool_proto2.c @@ -380,7 +380,7 @@ POOL_STATUS ErrorResponse(POOL_CONNECTION *frontend, char *string = NULL; int len; int i; - POOL_STATUS ret; + POOL_STATUS ret = POOL_CONTINUE; for (i=0;i<NUM_BACKENDS;i++) { @@ -398,7 +398,12 @@ POOL_STATUS ErrorResponse(POOL_CONNECTION *frontend, if (pool_write_and_flush(frontend, string, len) < 0) return POOL_END; - ret = raise_intentional_error_if_need(backend); + /* + * check session context, because this function is called + * by pool_do_auth too. + */ + if (pool_get_session_context()) + ret = raise_intentional_error_if_need(backend); /* change transaction state */ for (i=0;i<NUM_BACKENDS;i++) [parent: 1e4daa64b51f]