[SCM] Samba Shared Repository - branch master updated

Martin Schwenke martins at samba.org
Thu Feb 11 07:02:04 UTC 2016


The branch, master has been updated
       via  19a411f ctdb-recovery: Create recovery databases in state dir
      from  dcf6a60 nss_netbsd: Remove unimplemented prototypes

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 19a411f839c5c34fec2aa5e6cb095346be56d94e
Author: Amitay Isaacs <amitay at gmail.com>
Date:   Thu Feb 11 14:32:34 2016 +1100

    ctdb-recovery: Create recovery databases in state dir
    
    This matches the behaviour during serial database recovery.
    
    Signed-off-by: Amitay Isaacs <amitay at gmail.com>
    Reviewed-by: Martin Schwenke <martin at meltin.net>
    
    Autobuild-User(master): Martin Schwenke <martins at samba.org>
    Autobuild-Date(master): Thu Feb 11 08:01:14 CET 2016 on sn-devel-144

-----------------------------------------------------------------------

Summary of changes:
 ctdb/server/ctdb_recoverd.c        | 2 ++
 ctdb/server/ctdb_recovery_helper.c | 9 ++++++++-
 2 files changed, 10 insertions(+), 1 deletion(-)


Changeset truncated at 500 lines:

diff --git a/ctdb/server/ctdb_recoverd.c b/ctdb/server/ctdb_recoverd.c
index c89649a..e42433d 100644
--- a/ctdb/server/ctdb_recoverd.c
+++ b/ctdb/server/ctdb_recoverd.c
@@ -1781,6 +1781,8 @@ static int db_recovery_parallel(struct ctdb_recoverd *rec, TALLOC_CTX *mem_ctx)
 		goto fail;
 	}
 
+	setenv("CTDB_DBDIR_STATE", rec->ctdb->db_directory_state, 1);
+
 	if (!ctdb_vfork_with_logging(state, rec->ctdb, "recovery", prog, nargs,
 				     args, NULL, NULL, &state->pid)) {
 		DEBUG(DEBUG_ERR,
diff --git a/ctdb/server/ctdb_recovery_helper.c b/ctdb/server/ctdb_recovery_helper.c
index d7288e2..8fc2791 100644
--- a/ctdb/server/ctdb_recovery_helper.c
+++ b/ctdb/server/ctdb_recovery_helper.c
@@ -80,6 +80,7 @@ static struct recdb_context *recdb_create(TALLOC_CTX *mem_ctx, uint32_t db_id,
 					  const char *db_path,
 					  uint32_t hash_size, bool persistent)
 {
+	static char *db_dir_state = NULL;
 	struct recdb_context *recdb;
 	unsigned int tdb_flags;
 
@@ -88,10 +89,16 @@ static struct recdb_context *recdb_create(TALLOC_CTX *mem_ctx, uint32_t db_id,
 		return NULL;
 	}
 
+	if (db_dir_state == NULL) {
+		db_dir_state = getenv("CTDB_DBDIR_STATE");
+	}
+
 	recdb->db_name = db_name;
 	recdb->db_id = db_id;
 	recdb->db_path = talloc_asprintf(recdb, "%s/recdb.%s",
-					 dirname(discard_const(db_path)),
+					 db_dir_state != NULL ?
+					    db_dir_state :
+					    dirname(discard_const(db_path)),
 					 db_name);
 	if (recdb->db_path == NULL) {
 		talloc_free(recdb);


-- 
Samba Shared Repository



More information about the samba-cvs mailing list