From 4c1c3f2549f32fd069e0e7bf3aec299213f1e85b Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Sun, 25 Oct 2009 16:12:12 +0100 Subject: s3: Implement global locks in a g_lock tdb This is the basis to implement global locks in ctdb without depending on a shared file system. The initial goal is to make ctdb persistent transactions deterministic without too many timeouts. --- source3/librpc/gen_ndr/messaging.h | 4 +++- source3/librpc/gen_ndr/ndr_messaging.c | 1 + source3/librpc/idl/messaging.idl | 3 ++- 3 files changed, 6 insertions(+), 2 deletions(-) (limited to 'source3/librpc') diff --git a/source3/librpc/gen_ndr/messaging.h b/source3/librpc/gen_ndr/messaging.h index 225440a8fd..1312c845d4 100644 --- a/source3/librpc/gen_ndr/messaging.h +++ b/source3/librpc/gen_ndr/messaging.h @@ -62,7 +62,8 @@ enum messaging_type MSG_WINBIND_VALIDATE_CACHE=(int)(0x0408), MSG_WINBIND_DUMP_DOMAIN_LIST=(int)(0x0409), MSG_DUMP_EVENT_LIST=(int)(0x0500), - MSG_DBWRAP_TDB2_CHANGES=(int)(4001) + MSG_DBWRAP_TDB2_CHANGES=(int)(4001), + MSG_DBWRAP_G_LOCK_RETRY=(int)(4002) } #else { __donnot_use_enum_messaging_type=0x7FFFFFFF} @@ -118,6 +119,7 @@ enum messaging_type #define MSG_WINBIND_DUMP_DOMAIN_LIST ( 0x0409 ) #define MSG_DUMP_EVENT_LIST ( 0x0500 ) #define MSG_DBWRAP_TDB2_CHANGES ( 4001 ) +#define MSG_DBWRAP_G_LOCK_RETRY ( 4002 ) #endif ; diff --git a/source3/librpc/gen_ndr/ndr_messaging.c b/source3/librpc/gen_ndr/ndr_messaging.c index 3e2aa1f3b0..1452630539 100644 --- a/source3/librpc/gen_ndr/ndr_messaging.c +++ b/source3/librpc/gen_ndr/ndr_messaging.c @@ -74,6 +74,7 @@ _PUBLIC_ void ndr_print_messaging_type(struct ndr_print *ndr, const char *name, case MSG_WINBIND_DUMP_DOMAIN_LIST: val = "MSG_WINBIND_DUMP_DOMAIN_LIST"; break; case MSG_DUMP_EVENT_LIST: val = "MSG_DUMP_EVENT_LIST"; break; case MSG_DBWRAP_TDB2_CHANGES: val = "MSG_DBWRAP_TDB2_CHANGES"; break; + case MSG_DBWRAP_G_LOCK_RETRY: val = "MSG_DBWRAP_G_LOCK_RETRY"; break; } ndr_print_enum(ndr, name, "ENUM", val, r); } diff --git a/source3/librpc/idl/messaging.idl b/source3/librpc/idl/messaging.idl index 068658587f..08caa59508 100644 --- a/source3/librpc/idl/messaging.idl +++ b/source3/librpc/idl/messaging.idl @@ -88,7 +88,8 @@ interface messaging MSG_DUMP_EVENT_LIST = 0x0500, /* dbwrap messages 4001-4999 */ - MSG_DBWRAP_TDB2_CHANGES = 4001 + MSG_DBWRAP_TDB2_CHANGES = 4001, + MSG_DBWRAP_G_LOCK_RETRY = 4002 } messaging_type; /* messaging struct sent across the sockets and stored in the tdb */ -- cgit