diff options
| author | Ronnie Sahlberg <ronniesahlberg@gmail.com> | 2009-12-15 21:00:22 +1100 |
|---|---|---|
| committer | Ronnie Sahlberg <ronniesahlberg@gmail.com> | 2009-12-15 21:00:22 +1100 |
| commit | fcd16342f684dfd78a5889d2550cc64e31dedc42 (patch) | |
| tree | 5e2475b166d252c06d5d10ec8b6debf6c6fdc1c8 /ctdb/include | |
| parent | b3104bd1d0b4fc67ac5358a5d4322f4cd5a1f2b4 (diff) | |
| parent | 0982299beda2f966e1485213ffe1280fac8b7f2b (diff) | |
Merge branch 'trans3'
(This used to be ctdb commit b765e12a5fb87a6121e49b349017b6a961929346)
Diffstat (limited to 'ctdb/include')
| -rw-r--r-- | ctdb/include/ctdb.h | 3 | ||||
| -rw-r--r-- | ctdb/include/ctdb_private.h | 12 |
2 files changed, 14 insertions, 1 deletions
diff --git a/ctdb/include/ctdb.h b/ctdb/include/ctdb.h index 0270925025..552726a25d 100644 --- a/ctdb/include/ctdb.h +++ b/ctdb/include/ctdb.h @@ -127,6 +127,9 @@ struct ctdb_call_info { /* the key used for transaction locking on persistent databases */ #define CTDB_TRANSACTION_LOCK_KEY "__transaction_lock__" +/* the key used to store persistent db sequence number */ +#define CTDB_DB_SEQNUM_KEY "__db_sequence_number__" + enum control_state {CTDB_CONTROL_WAIT, CTDB_CONTROL_DONE, CTDB_CONTROL_ERROR, CTDB_CONTROL_TIMEOUT}; struct ctdb_client_control_state { diff --git a/ctdb/include/ctdb_private.h b/ctdb/include/ctdb_private.h index e490b21a8c..b6c4b2fa1a 100644 --- a/ctdb/include/ctdb_private.h +++ b/ctdb/include/ctdb_private.h @@ -472,7 +472,7 @@ struct ctdb_db_context { struct tdb_wrap *ltdb; struct ctdb_registered_call *calls; /* list of registered calls */ uint32_t seqnum; - struct timed_event *te; + struct timed_event *seqnum_update; struct ctdb_traverse_local_handle *traverse; bool transaction_active; struct ctdb_vacuum_handle *vacuum_handle; @@ -623,6 +623,8 @@ enum ctdb_controls {CTDB_CONTROL_PROCESS_EXISTS = 0, CTDB_CONTROL_TRANS2_ACTIVE = 116, CTDB_CONTROL_GET_LOG = 117, CTDB_CONTROL_CLEAR_LOG = 118, + CTDB_CONTROL_TRANS3_COMMIT = 119, + CTDB_CONTROL_GET_DB_SEQNUM = 120, }; /* @@ -1424,6 +1426,10 @@ int32_t ctdb_control_trans2_commit(struct ctdb_context *ctdb, struct ctdb_req_control *c, TDB_DATA recdata, bool *async_reply); +int32_t ctdb_control_trans3_commit(struct ctdb_context *ctdb, + struct ctdb_req_control *c, + TDB_DATA recdata, bool *async_reply); + int32_t ctdb_control_transaction_start(struct ctdb_context *ctdb, uint32_t id); int32_t ctdb_control_transaction_commit(struct ctdb_context *ctdb, uint32_t id); int32_t ctdb_control_transaction_cancel(struct ctdb_context *ctdb); @@ -1530,4 +1536,8 @@ struct ctdb_log_state *ctdb_fork_with_logging(TALLOC_CTX *mem_ctx, int32_t ctdb_control_process_exists(struct ctdb_context *ctdb, pid_t pid); struct ctdb_client *ctdb_find_client_by_pid(struct ctdb_context *ctdb, pid_t pid); +int32_t ctdb_control_get_db_seqnum(struct ctdb_context *ctdb, + TDB_DATA indata, + TDB_DATA *outdata); + #endif |
