Reid Horuff
1b8a2e8fdd
[rocksdb] Memtable Log Referencing and Prepared Batch Recovery
...
Summary:
This diff is built on top of WriteBatch modification: https://reviews.facebook.net/D54093 and adds the required functionality to rocksdb core necessary for rocksdb to support 2PC.
modfication of DBImpl::WriteImpl()
- added two arguments *uint64_t log_used = nullptr, uint64_t log_ref = 0;
- *log_used is an output argument which will return the log number which the incoming batch was inserted into, 0 if no WAL insert took place.
- log_ref is a supplied log_number which all memtables inserted into will reference after the batch insert takes place. This number will reside in 'FindMinPrepLogReferencedByMemTable()' until all Memtables insertinto have flushed.
- Recovery/writepath is now aware of prepared batches and commit and rollback markers.
Test Plan: There is currently no test on this diff. All testing of this functionality takes place in the Transaction layer/diff but I will add some testing.
Reviewers: IslamAbdelRahman, sdong
Subscribers: leveldb, santoshb, andrewkr, vasilep, dhruba, hermanlee4
Differential Revision: https://reviews.facebook.net/D56919
2016-05-10 14:06:07 -07:00
..
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-03-16 22:57:57 +01:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-03-10 17:35:19 -08:00
2016-03-10 17:35:19 -08:00
2016-04-07 13:55:10 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-03-31 16:01:47 -07:00
2016-02-09 15:12:00 -08:00
2016-04-25 23:02:14 -07:00
2016-04-27 17:36:03 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-05-10 09:53:52 -07:00
2016-05-06 17:42:50 -07:00
2016-02-09 15:12:00 -08:00
2016-02-17 23:32:14 -08:00
2016-05-09 14:38:50 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-03-17 10:07:21 -07:00
2016-03-17 10:07:21 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-03-11 22:56:25 -08:00
2016-03-17 14:28:41 -07:00
2016-03-11 16:54:25 -08:00
2016-03-15 11:38:15 -07:00
2016-03-11 16:54:25 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-23 10:26:24 -08:00
2016-02-23 10:26:24 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-01-26 10:49:24 -08:00
2015-09-11 09:57:02 -07:00
2016-01-26 10:49:24 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-04-15 10:22:18 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-05-06 11:27:28 -07:00
2016-05-10 14:06:07 -07:00
2016-03-02 10:34:14 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-05-10 14:06:07 -07:00
2016-05-09 15:57:19 -07:00
2016-05-09 15:57:19 -07:00
2016-02-17 20:22:40 +08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-03-31 16:01:47 -07:00
2016-02-09 15:12:00 -08:00
2016-03-16 22:57:57 +01:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-04-13 09:01:42 -07:00
2016-02-09 15:12:00 -08:00
2016-05-06 16:09:09 -07:00
2016-02-18 11:25:19 -08:00
2016-02-17 15:20:23 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-04-01 11:06:06 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-04-15 10:22:18 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-19 13:57:18 -08:00
2016-02-10 16:56:01 -08:00
2016-02-10 16:56:01 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-03-04 16:03:31 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-03-11 15:16:52 -08:00
2016-03-15 10:57:33 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2015-11-18 16:23:19 -08:00
2015-03-12 12:07:10 -07:00