diff options
Diffstat (limited to 'ctdb/client/ctdb_client.c')
-rw-r--r-- | ctdb/client/ctdb_client.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/ctdb/client/ctdb_client.c b/ctdb/client/ctdb_client.c index c8ab1cd6cb..df57302de0 100644 --- a/ctdb/client/ctdb_client.c +++ b/ctdb/client/ctdb_client.c @@ -1926,6 +1926,12 @@ int ctdb_ctrl_createdb(struct ctdb_context *ctdb, struct timeval timeout, uint32 tdb_flags = TDB_INCOMPATIBLE_HASH; } +#ifdef TDB_MUTEX_LOCKING + if (!persistent && ctdb->tunable.mutex_enabled == 1) { + tdb_flags |= TDB_MUTEX_LOCKING; + } +#endif + ret = ctdb_control(ctdb, destnode, tdb_flags, persistent?CTDB_CONTROL_DB_ATTACH_PERSISTENT:CTDB_CONTROL_DB_ATTACH, 0, data, @@ -2073,6 +2079,12 @@ struct ctdb_db_context *ctdb_attach(struct ctdb_context *ctdb, tdb_flags |= TDB_INCOMPATIBLE_HASH; } +#ifdef TDB_MUTEX_LOCKING + if (!persistent && ctdb->tunable.mutex_enabled == 1) { + tdb_flags |= TDB_MUTEX_LOCKING; + } +#endif + /* tell ctdb daemon to attach */ ret = ctdb_control(ctdb, CTDB_CURRENT_NODE, tdb_flags, persistent?CTDB_CONTROL_DB_ATTACH_PERSISTENT:CTDB_CONTROL_DB_ATTACH, |