summaryrefslogtreecommitdiff
path: root/src/third_party/wiredtiger/src/include/misc.h
diff options
context:
space:
mode:
authorAlex Gorrod <alexander.gorrod@mongodb.com>2017-08-01 16:42:49 +1000
committerAlex Gorrod <alexander.gorrod@mongodb.com>2017-08-01 16:42:49 +1000
commit835bfb21d8e67663d84a40aa4f7370a4403725a9 (patch)
tree4f5edb231524f95272f834e31461ba4e17e52903 /src/third_party/wiredtiger/src/include/misc.h
parent6300b3bd4ad9cd238a02bdb8ca681a447913f1af (diff)
downloadmongo-835bfb21d8e67663d84a40aa4f7370a4403725a9.tar.gz
Import wiredtiger: 2e9744d11a65c63ba7445060dc78371250f04051 from branch mongodb-3.6
ref: 6173a98979..2e9744d11a for: 3.5.11 WT-2309 Add yields and/or sleeps in #DIAGNOSTIC mode WT-3047 Add mode aimed at uncovering race conditions in split code WT-3308 Add statistics tracking around yield loops WT-3316 Add new engineering section to reference guide documentation WT-3338 Optimize cursor modify WT-3380 Special case 8-byte timestamps WT-3387 Add support for a stable timestamp WT-3389 Restructure split code to hold a split generation for the entire operation. WT-3406 Reconciliation is choosing reserved records for writing. WT-3410 Add developer documentation for table rename WT-3412 Add backoff logic to the btree delete and walk yield loops WT-3418 block manager object race WT-3422 WiredTiger upgrading documents out of date WT-3432 workgen needs braces around an "if" body WT-3433 session->alter method should not be supported in read-only mode WT-3439 lint/cleanup WT-3440 Add a log record when starting a checkpoint WT-3442 Coverity 1378213: false positive on diagnostic assignment. WT-3446 Temporarily disable timestamp testing in test/checkpoint WT-3447 test_stat_log02 can assert before table stats are printed WT-3461 Avoid long sleeps when the system clock is adjusted WT-3463 Add recovery of backup to test_timestamp03.py WT-3466 Track the first commit timestamp for each transaction WT-3467 Minor lint/cleanup
Diffstat (limited to 'src/third_party/wiredtiger/src/include/misc.h')
-rw-r--r--src/third_party/wiredtiger/src/include/misc.h22
1 files changed, 14 insertions, 8 deletions
diff --git a/src/third_party/wiredtiger/src/include/misc.h b/src/third_party/wiredtiger/src/include/misc.h
index 838086c2ced..bf7d36e19ca 100644
--- a/src/third_party/wiredtiger/src/include/misc.h
+++ b/src/third_party/wiredtiger/src/include/misc.h
@@ -251,22 +251,28 @@
/* Timestamp type and helper macros. */
#if WT_TIMESTAMP_SIZE > 0
-#define HAVE_TIMESTAMPS 1
+#define HAVE_TIMESTAMPS
#else
-#undef HAVE_TIMESTAMPS
+#undef HAVE_TIMESTAMPS
#endif
#ifdef HAVE_TIMESTAMPS
-#define WT_TIMESTAMP(x) (x)
-typedef uint8_t wt_timestamp_t[WT_TIMESTAMP_SIZE];
-#define WT_DECL_TIMESTAMP(x) wt_timestamp_t x;
+struct __wt_timestamp_t {
+#if WT_TIMESTAMP_SIZE == 8
+ uint64_t val;
#else
-#define WT_TIMESTAMP(x) (NULL)
+ uint8_t ts[WT_TIMESTAMP_SIZE];
+#endif
+};
+typedef struct __wt_timestamp_t wt_timestamp_t;
+#define WT_DECL_TIMESTAMP(x) wt_timestamp_t x;
+#define WT_TIMESTAMP_NULL(x) (x)
+#else
+typedef void wt_timestamp_t;
+#define WT_TIMESTAMP_NULL(x) (NULL)
#define WT_DECL_TIMESTAMP(x)
#endif
-#define WT_GET_TIMESTAMP(x) WT_TIMESTAMP((x)->timestamp)
-
/*
* In diagnostic mode we track the locations from which hazard pointers and
* scratch buffers were acquired.