From 9f0ff6c21eb9f7493de01a4bda16f178e97c80aa Mon Sep 17 00:00:00 2001 From: Steve Singer Date: Wed, 8 Jun 2011 13:12:29 -0400 Subject: [PATCH] Fix for bug 218. In serializable isolation level any table locks should be taken out before the first SQL statement or the effect won't be as expected. Invoking storePath_int() counts as a SQL statement, so we lock the table before. --- src/slon/remote_worker.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/src/slon/remote_worker.c b/src/slon/remote_worker.c index 2728700..6340058 100644 --- a/src/slon/remote_worker.c +++ b/src/slon/remote_worker.c @@ -878,7 +878,9 @@ remoteWorkerThread_main(void *cdata) rtcfg_storePath(pa_server, pa_conninfo, pa_connretry); slon_appendquery(&query1, - "select %s.storePath_int(%d, %d, '%q', %d); ", + "lock table %s.sl_config_lock;" + "select %s.storePath_int(%d, %d, '%q', %d); ", + rtcfg_namespace, rtcfg_namespace, pa_server, pa_client, pa_conninfo, pa_connretry); -- 1.7.0.4