summaryrefslogtreecommitdiffstats
path: root/ctdb/include
diff options
context:
space:
mode:
authorRonnie Sahlberg <sahlberg@ronnie>2007-04-29 22:14:51 +1000
committerRonnie Sahlberg <sahlberg@ronnie>2007-04-29 22:14:51 +1000
commit1af701291f8a6b8a04ed201ff862e1a7813dff05 (patch)
tree0e17cf0cc558d57fa579532b67e694c9433bd3be /ctdb/include
parent376a3ea85224f805ad12c245f01c96b7b188cd9b (diff)
implement a control to pull a database from a remote node
it does not yet work since ctdb_control can right now only be called from client context and the pull is implemented as the target ctdb node itself using a get_keys to pull the keys from the source node thus ctdb daemon needs to ctdb_control to a remote node (This used to be ctdb commit a55c7c64b4ff87f54b90649c9f469b1ff36dc9ea)
Diffstat (limited to 'ctdb/include')
-rw-r--r--ctdb/include/ctdb.h5
-rw-r--r--ctdb/include/ctdb_private.h3
2 files changed, 7 insertions, 1 deletions
diff --git a/ctdb/include/ctdb.h b/ctdb/include/ctdb.h
index bf8643f22d..f7eb16b75e 100644
--- a/ctdb/include/ctdb.h
+++ b/ctdb/include/ctdb.h
@@ -271,4 +271,9 @@ int ctdb_setdmaster(struct ctdb_context *ctdb, uint32_t destnode, TALLOC_CTX *me
*/
int ctdb_cleardb(struct ctdb_context *ctdb, uint32_t destnode, TALLOC_CTX *mem_ctx, uint32_t dbid);
+/*
+ pull a db from a remote node
+ */
+int ctdb_pulldb(struct ctdb_context *ctdb, uint32_t destnode, TALLOC_CTX *mem_ctx, uint32_t dbid, uint32_t from_vnn);
+
#endif
diff --git a/ctdb/include/ctdb_private.h b/ctdb/include/ctdb_private.h
index 5207bea970..ce47f9948d 100644
--- a/ctdb/include/ctdb_private.h
+++ b/ctdb/include/ctdb_private.h
@@ -257,7 +257,8 @@ enum ctdb_controls {CTDB_CONTROL_PROCESS_EXISTS,
CTDB_CONTROL_GET_NODEMAP,
CTDB_CONTROL_GET_KEYS,
CTDB_CONTROL_SET_DMASTER,
- CTDB_CONTROL_CLEAR_DB};
+ CTDB_CONTROL_CLEAR_DB,
+ CTDB_CONTROL_PULL_DB};
enum call_state {CTDB_CALL_WAIT, CTDB_CALL_DONE, CTDB_CALL_ERROR};