summaryrefslogtreecommitdiff
path: root/source3/lib/dbwrap_ctdb.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2008-08-08 13:12:16 +1000
committerMichael Adam <obnox@samba.org>2008-08-13 11:54:11 +0200
commitca64c340c735fa075c0259e5fa61982a2e3a1c5a (patch)
tree5fad490706c0f1a1e26131d2c8a38919b87ea6ce /source3/lib/dbwrap_ctdb.c
parent55de7c17488f12e2a855ba4f1a1efc024c5ed895 (diff)
downloadsamba-ca64c340c735fa075c0259e5fa61982a2e3a1c5a.tar.gz
samba-ca64c340c735fa075c0259e5fa61982a2e3a1c5a.tar.bz2
samba-ca64c340c735fa075c0259e5fa61982a2e3a1c5a.zip
use CTDB_CONTROL_TRANS2_COMMIT_RETRY to prevent the counter getting
out of sync (This used to be commit 571ec7893c8b40959c005d510c039e3f231ffc67)
Diffstat (limited to 'source3/lib/dbwrap_ctdb.c')
-rw-r--r--source3/lib/dbwrap_ctdb.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/source3/lib/dbwrap_ctdb.c b/source3/lib/dbwrap_ctdb.c
index 8261e2f733..049e1b9584 100644
--- a/source3/lib/dbwrap_ctdb.c
+++ b/source3/lib/dbwrap_ctdb.c
@@ -646,8 +646,9 @@ again:
/* tell ctdbd to commit to the other nodes */
rets = ctdbd_control_local(messaging_ctdbd_connection(),
- CTDB_CONTROL_TRANS2_COMMIT, h->ctx->db_id, 0,
- db_ctdb_marshall_finish(h->m_write), NULL, NULL, &status);
+ retries==0?CTDB_CONTROL_TRANS2_COMMIT:CTDB_CONTROL_TRANS2_COMMIT_RETRY,
+ h->ctx->db_id, 0,
+ db_ctdb_marshall_finish(h->m_write), NULL, NULL, &status);
if (!NT_STATUS_IS_OK(rets) || status != 0) {
tdb_transaction_cancel(h->ctx->wtdb->tdb);
sleep(1);