[PATCH] messaging: Init server_id_db after clustering

Volker Lendecke Volker.Lendecke at SerNet.DE
Thu Jun 11 09:05:36 MDT 2015


Hi!

Review&push appreciated!

Thanks,

Volker

-- 
SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen
phone: +49-551-370000-0, fax: +49-551-370000-9
AG Göttingen, HRB 2816, GF: Dr. Johannes Loxen
http://www.sernet.de, mailto:kontakt at sernet.de
-------------- next part --------------
From c5460a1228eb600d4f87bf2fcd2bad715da2e37c Mon Sep 17 00:00:00 2001
From: Volker Lendecke <vl at samba.org>
Date: Thu, 11 Jun 2015 14:34:12 +0000
Subject: [PATCH] messaging: Init server_id_db after clustering

server_id_db_init references our pid, which got changed by the clustering
initialization just a line above. So far names.tdb is just local, but
we should register our clustered id with vnn.pid instead of just the
pid nevertheless.

Signed-off-by: Volker Lendecke <vl at samba.org>
---
 source3/lib/messages.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/source3/lib/messages.c b/source3/lib/messages.c
index 0297cc8..041aa1f 100644
--- a/source3/lib/messages.c
+++ b/source3/lib/messages.c
@@ -342,15 +342,6 @@ struct messaging_context *messaging_init(TALLOC_CTX *mem_ctx,
 		return NULL;
 	}
 
-	ctx->names_db = server_id_db_init(
-		ctx, ctx->id, lp_lock_directory(), 0,
-		TDB_INCOMPATIBLE_HASH|TDB_CLEAR_IF_FIRST);
-	if (ctx->names_db == NULL) {
-		DEBUG(10, ("%s: server_id_db_init failed\n", __func__));
-		TALLOC_FREE(ctx);
-		return NULL;
-	}
-
 	talloc_set_destructor(ctx, messaging_context_destructor);
 
 	if (lp_clustering()) {
@@ -365,6 +356,15 @@ struct messaging_context *messaging_init(TALLOC_CTX *mem_ctx,
 	}
 	ctx->id.vnn = get_my_vnn();
 
+	ctx->names_db = server_id_db_init(
+		ctx, ctx->id, lp_lock_directory(), 0,
+		TDB_INCOMPATIBLE_HASH|TDB_CLEAR_IF_FIRST);
+	if (ctx->names_db == NULL) {
+		DEBUG(10, ("%s: server_id_db_init failed\n", __func__));
+		TALLOC_FREE(ctx);
+		return NULL;
+	}
+
 	messaging_register(ctx, NULL, MSG_PING, ping_message);
 
 	/* Register some debugging related messages */
-- 
1.9.1



More information about the samba-technical mailing list