The branch, 1.0.108 has been created at f24338e68c462e5cdee3194bb8f3ba18c3ca4672 (commit)
- Log ----------------------------------------------------------------- commit f24338e68c462e5cdee3194bb8f3ba18c3ca4672 Author: Ronnie Sahlberg <ronniesahlb...@gmail.com> Date: Thu Jan 7 13:48:05 2010 +1100 version 1.0.108-3 commit 33da7bb109df5f5d4fe2719853718d0fff4842ca Author: Ronnie Sahlberg <ronniesahlb...@gmail.com> Date: Thu Jan 7 13:47:00 2010 +1100 From Volker: This fixes the following condition: On a cluster with many nodes a single node was running as the only node. Any transaction that was attempted against the persistent databases hung. From a former run of the cluster "__transaction_lock__" existed in the persistent databases, but with a dmaster entry in the ctdb header that was not the local node. When the transaction_start code tried to acquire this, ctdb queued the dmaster request to a node that does not exist, hanging forever. I though -- wait a second, why has nobody found this yet with non-persistent databases? Answer: Non-persistent databases are opened with CLEAR_IF_FIRST, which means that all records are locally deleted when ctdb attaches to it. This wipe does not happen for persistent databases, but we have this one __transaction_lock__ record around that is treated like a non-persistent database. This patch treats the __transaction_lock__ for persistent db's specially: It deletes it locally when ctdbd attaches to the db. commit b24075916f5b18c6c2e6dfc52ef4beacc315413b Author: Ronnie Sahlberg <ronniesahlb...@gmail.com> Date: Wed Jan 6 10:50:39 2010 +1100 version 1.0.108-2 commit 9d90a68b6995f0b7e1997b668cc980a81cf8114e Author: Ronnie Sahlberg <ronniesahlb...@gmail.com> Date: Wed Jan 6 10:42:41 2010 +1100 use --ping instead of --ping-dc for winbind for now ----------------------------------------------------------------------- -- CTDB repository