diff options
author | Luke Chen <luke.chen@mongodb.com> | 2018-09-11 16:21:26 +1000 |
---|---|---|
committer | Luke Chen <luke.chen@mongodb.com> | 2018-09-11 16:48:34 +1000 |
commit | 47826721dd85248b8acb569694687db0e71257cd (patch) | |
tree | 648b6250d55b16a2cac3070c4f1c963864d1ef70 /src/third_party/wiredtiger/src/include/txn.h | |
parent | e2be5a4e3684daf2410e4d5e31439c9669a38e6d (diff) | |
download | mongo-47826721dd85248b8acb569694687db0e71257cd.tar.gz |
Import wiredtiger: 45fd19bcb1007fd4e473d77ddd09d3157ff15c7e from branch mongodb-4.2
ref: 63b8cf2e0b..45fd19bcb1
for: 4.1.3
WT-3879 Disallow checkpoint from evicting metadata pages
WT-4090 Low priority reads
WT-4119 Avoid restarts updating / removing during a column store scan
WT-4131 Rename lookaside to cache overflow
WT-4154 Surface the oldest read timestamp
WT-4156 Add new wiredtiger_salvage top level API
WT-4177 Backup cursor open should force a log file switch
WT-4218 Change eviction to evict prepared updates
WT-4231 Fix ctags index of functions with attributes
WT-4246 Change transaction update list to support indirect references
WT-4259 Restore ref to the previous state rather than MEM when eviction fails
WT-4261 Test salvage of out-of-sync metadata/turtle files
WT-4267 fixed-length column store operations can corrupt data
WT-4268 Random abort should wait until record files exist before starting timer
WT-4270 Add an operation field to know where threads hang
WT-4272 Increase startup timeout to 30 seconds for slow I/O systems
WT-4274 Fix memory leak in wt4156_metadata_salvage test
WT-4277 Make truncate in column stores more efficient
WT-4281 Shorten runtime of Python test suite
WT-4282 Don't transition pages from limbo to mem unless required
WT-4283 Restore WT_ERROR and use a corrupt flag
WT-4284 Print a verbose message in recovery on error too
WT-4285 Fix wt4156_metadata_salvage Coverity/lint complaints
WT-4286 Column store should skip end-of-table checks if there's an exact match
WT-4288 Don't let return value of closing conn overwrite WT_TRY_SALVAGE
WT-4289 Update WT_DATA_CORRUPTION to WT_TRY_SALVAGE in test_txn19.py
WT-4291 Fix test_txn19.py error detection
WT-4292 Add call to testutil_cleanup to avoid memory leak
WT-4300 Setting the update timestamp can overwrite the WT_REF.addr field
WT-4301 WT_CURSOR.reserve operations can leak memory when committed
WT-4305 Add a gating variable for long running prepare support
WT-4306 Fix mode if metadata pages need eviction
Diffstat (limited to 'src/third_party/wiredtiger/src/include/txn.h')
-rw-r--r-- | src/third_party/wiredtiger/src/include/txn.h | 30 |
1 files changed, 24 insertions, 6 deletions
diff --git a/src/third_party/wiredtiger/src/include/txn.h b/src/third_party/wiredtiger/src/include/txn.h index c570ca32fe1..6a0c3edaa13 100644 --- a/src/third_party/wiredtiger/src/include/txn.h +++ b/src/third_party/wiredtiger/src/include/txn.h @@ -172,18 +172,36 @@ typedef enum __wt_txn_isolation { * records during commit or undo the operations during rollback. */ struct __wt_txn_op { - uint32_t fileid; + WT_BTREE *btree; enum { - WT_TXN_OP_NONE, - WT_TXN_OP_BASIC, - WT_TXN_OP_INMEM, + WT_TXN_OP_NONE=0, + WT_TXN_OP_BASIC_COL, + WT_TXN_OP_BASIC_ROW, + WT_TXN_OP_INMEM_COL, + WT_TXN_OP_INMEM_ROW, WT_TXN_OP_REF_DELETE, WT_TXN_OP_TRUNCATE_COL, WT_TXN_OP_TRUNCATE_ROW } type; union { - /* WT_TXN_OP_BASIC, WT_TXN_OP_INMEM */ - WT_UPDATE *upd; + /* WT_TXN_OP_BASIC_ROW, WT_TXN_OP_INMEM_ROW */ + struct { + WT_UPDATE *upd; + WT_ITEM key; + } op_row; + + /* WT_TXN_OP_BASIC_COL, WT_TXN_OP_INMEM_COL */ + struct { + WT_UPDATE *upd; + uint64_t recno; + } op_col; +/* + * upd is pointing to same memory in both op_row and op_col, so for simplicity + * just chose op_row upd + */ +#undef op_upd +#define op_upd op_row.upd + /* WT_TXN_OP_REF_DELETE */ WT_REF *ref; /* WT_TXN_OP_TRUNCATE_COL */ |