]> git.ozlabs.org Git - ccan/blobdiff - ccan/tdb/tdb_private.h
Port nested transaction allow from newer ctdb.
[ccan] / ccan / tdb / tdb_private.h
index 4836472864006d3cab1f5726553399d7bf4054f3..42770c353b6fa106eff6f8615ab2b2f7235dad6d 100644 (file)
@@ -34,6 +34,7 @@
 #include "system/wait.h"
 #else
 #define _XOPEN_SOURCE 500
+#define _FILE_OFFSET_BITS 64
 #include <stdint.h>
 #include <stdbool.h>
 #include <stdlib.h>
@@ -90,6 +91,7 @@ typedef uint32_t tdb_off_t;
 
 #ifdef TDB_TRACE
 void tdb_trace(struct tdb_context *tdb, const char *op);
+void tdb_trace_seqnum(struct tdb_context *tdb, uint32_t seqnum, const char *op);
 void tdb_trace_open(struct tdb_context *tdb, const char *op,
                    unsigned hash_size, unsigned tdb_flags, unsigned open_flags);
 void tdb_trace_ret(struct tdb_context *tdb, const char *op, int ret);
@@ -107,6 +109,7 @@ void tdb_trace_2rec_retrec(struct tdb_context *tdb, const char *op,
                           TDB_DATA rec1, TDB_DATA rec2, TDB_DATA ret);
 #else
 #define tdb_trace(tdb, op)
+#define tdb_trace_seqnum(tdb, seqnum, op)
 #define tdb_trace_open(tdb, op, hash_size, tdb_flags, open_flags)
 #define tdb_trace_ret(tdb, op, ret)
 #define tdb_trace_retrec(tdb, op, ret)
@@ -215,8 +218,11 @@ struct tdb_context {
        struct tdb_transaction *transaction;
        int page_size;
        int max_dead_records;
-       int have_transaction_lock;
+       int transaction_lock_count;
+#ifdef TDB_TRACE
        int tracefd;
+       uint32_t transaction_prepare_seqnum;
+#endif
        volatile sig_atomic_t *interrupt_sig_ptr;
 };