[SCM] Samba Shared Repository - branch master updated
Volker Lendecke
vlendec at samba.org
Fri Mar 11 19:00:03 UTC 2016
The branch, master has been updated
via ad5b9c3 ctdb-client: Increase the timeout for TRANS3_COMMIT control
from 9341c02 smbd: Prevent a crash
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit ad5b9c3df2f2e3c93642fb1c069a6f4c56eb94f4
Author: Amitay Isaacs <amitay at gmail.com>
Date: Thu Mar 10 18:01:31 2016 +1100
ctdb-client: Increase the timeout for TRANS3_COMMIT control
On a busy system, TRANS3_COMMIT control can take upto or longer than
3 seconds. On timeout, there are few possible outcomes.
1. The transaction has completed on all nodes and TRANS3_COMMIT control
has returned. In such a case, there is no problem.
2. The transaction has completed on the local node, but TRANS3_COMMIT
control is still active. In such a case, ctdb_transaction_commit()
can return successfully. If this is being called from ctdb, then
ctdb will exit. This will cause ctdb daemon to trigger recovery
since the client exited while transaction is active. This will cause
unnecessary recovery.
3. Database recovery was started and ctdb_transaction_commit() will
retry till the recovery completes the transaction.
Increasing the timeout to 30 seconds will avoid the spurious database
recoveries when TRANS3_COMMIT control takes longer to finish.
Signed-off-by: Amitay Isaacs <amitay at gmail.com>
Reviewed-by: Volker Lendecke <vl at samba.org>
Autobuild-User(master): Volker Lendecke <vl at samba.org>
Autobuild-Date(master): Fri Mar 11 19:59:53 CET 2016 on sn-devel-144
-----------------------------------------------------------------------
Summary of changes:
ctdb/client/ctdb_client.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Changeset truncated at 500 lines:
diff --git a/ctdb/client/ctdb_client.c b/ctdb/client/ctdb_client.c
index fd70806..9fae604 100644
--- a/ctdb/client/ctdb_client.c
+++ b/ctdb/client/ctdb_client.c
@@ -4320,7 +4320,7 @@ int ctdb_transaction_commit(struct ctdb_transaction_handle *h)
}
again:
- timeout = timeval_current_ofs(3,0);
+ timeout = timeval_current_ofs(30,0);
ret = ctdb_control(h->ctdb_db->ctdb, CTDB_CURRENT_NODE,
h->ctdb_db->db_id,
CTDB_CONTROL_TRANS3_COMMIT, 0,
--
Samba Shared Repository
More information about the samba-cvs
mailing list