From ed1ddd01debfb0cc09bc8953da52f24dd22ca0e2 Mon Sep 17 00:00:00 2001 From: Dmitry Simonenko Date: Mon, 20 Feb 2017 17:49:50 +0300 Subject: [PATCH] odissey: set proper client transition in transaction pooling --- core/od_router_transaction.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/od_router_transaction.c b/core/od_router_transaction.c index d7bdb9b7..cb95e41b 100644 --- a/core/od_router_transaction.c +++ b/core/od_router_transaction.c @@ -64,7 +64,7 @@ od_router_transaction(od_client_t *client) route->scheme->client_max); return OD_RS_ELIMIT; } - od_clientpool_set(&route->client_pool, client, OD_CQUEUE); + od_clientpool_set(&route->client_pool, client, OD_CPENDING); client->route = route; od_debug(&pooler->od->log, client->io, "C: route to %s server", @@ -134,6 +134,8 @@ od_router_transaction(od_client_t *client) if (type == 'Z') { if (! server->is_transaction) { + od_clientpool_set(&route->client_pool, client, + OD_CPENDING); client->server = NULL; od_berelease(server); server = NULL;