From 610d42b4a522ea9e0af9946a66eedf998affdb13 Mon Sep 17 00:00:00 2001 From: Yoshiyuki Asaba Date: Tue, 15 May 2007 02:32:28 +0000 Subject: [PATCH] Delay buffer flush in SimpleForwardToBackend(). --- pool_process_query.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/pool_process_query.c b/pool_process_query.c index 15d7b5a..ea0be17 100644 --- a/pool_process_query.c +++ b/pool_process_query.c @@ -2743,10 +2743,10 @@ POOL_STATUS SimpleForwardToBackend(char kind, POOL_CONNECTION *frontend, POOL_CO if (p == NULL) return POOL_END; - if (pool_write_and_flush(MASTER(backend), p, len)) + if (pool_write(MASTER(backend), p, len)) return POOL_END; if (REPLICATION) - if (pool_write_and_flush(SECONDARY(backend), p, len)) + if (pool_write(SECONDARY(backend), p, len)) return POOL_END; if (kind == 'P') /* Parse message? */ @@ -2895,6 +2895,15 @@ POOL_STATUS SimpleForwardToBackend(char kind, POOL_CONNECTION *frontend, POOL_CO SimpleForwardToFrontend(kind1, frontend, backend); return pool_flush(frontend); } + else + { + if (pool_flush(MASTER(backend))) + return POOL_END; + + if (REPLICATION) + if (pool_flush(SECONDARY(backend))) + return POOL_END; + } return POOL_CONTINUE; } -- 2.39.5