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-04-14 17:33:53 -07:00
2016-02-22 21:32:19 -08:00
2016-02-22 21:32:19 -08:00
2016-04-29 11:35:00 -07:00
2016-04-29 11:35:00 -07:00
2016-04-27 17:36:03 -07:00
2016-04-27 18:30:04 -07:00
2016-04-28 17:50:58 -07:00
2016-05-02 10:04:37 -07:00
2016-04-29 17:00:50 -07:00
2016-02-22 13:54:58 -08:00
2016-04-26 14:22:07 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-04-16 01:47:15 -07:00
2016-03-24 19:36:39 -07:00
2016-04-19 22:54:24 -07:00
2016-02-17 15:20:23 -08:00
2016-04-29 17:00:50 -07:00
2016-02-17 15:20:23 -08:00
2016-05-09 15:30:02 -07:00
2016-05-09 15:57:19 -07:00
2016-05-09 15:57:19 -07:00
2016-05-09 15:57:19 -07:00
2016-04-28 02:30:44 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-04-28 17:50:58 -07:00
2016-02-09 15:12:00 -08:00
2016-04-18 11:34:11 -07:00
2016-05-06 10:16:11 -07:00
2016-03-31 17:12:18 -07:00
2016-04-28 17:50:58 -07: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-02-09 15:12:00 -08:00
2016-03-02 16:23:59 -08:00
2016-02-09 15:12:00 -08:00
2016-05-10 14:06:07 -07:00
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-03-31 17:12:18 -07:00
2016-03-02 16:23:59 -08:00
2016-05-03 16:50:01 -07:00
2016-04-26 12:41:07 -07:00
2016-05-09 11:52:28 -07:00
2016-02-09 15:12:00 -08:00
2016-04-25 23:02:14 -07:00
2016-04-19 14:05:48 -07:00
2016-04-06 23:10:32 -07:00
2016-03-04 18:15:29 -08:00
2016-05-09 16:08:30 -07:00
2016-04-28 17:50:58 -07:00
2016-05-09 11:52:28 -07:00
2016-05-09 15:30:02 -07:00
2016-04-22 16:49:12 -07:00
2016-04-19 22:54:24 -07:00
2016-04-25 23:02:14 -07:00
2016-02-09 15:12:00 -08:00
2016-05-10 14:06:07 -07:00
2016-02-29 12:56:55 -08:00
2016-04-29 11:35:00 -07:00
2016-04-29 11:35:00 -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-04-15 10:22:18 -07:00
2016-04-29 11:35:00 -07: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-09 15:12:00 -08:00
2016-03-04 18:15:29 -08:00
2016-03-02 16:23:59 -08:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-04-25 13:56:59 -07:00
2016-04-25 13:56:59 -07:00
2016-03-10 18:16:21 -08:00
2016-04-29 11:35:00 -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-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-05-10 14:06:07 -07:00
2016-05-10 14:06:07 -07:00
2016-05-10 14:06:07 -07:00
2016-05-10 14:06:07 -07:00
2016-02-09 15:12:00 -08:00
2016-04-01 15:48:55 -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-04-26 14:22:07 -07:00
2016-04-26 12:41:07 -07:00
2016-04-06 23:10:32 -07:00
2016-04-28 16:48:03 -07:00
2016-03-18 15:18:42 -07:00
2016-04-29 11:35:00 -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-05-04 15:25:58 -07:00
2016-05-04 15:25:58 -07:00
2016-04-06 23:10:32 -07:00
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-03-30 23:05:22 +05:30
2016-02-09 15:12:00 -08:00
2016-02-09 15:12:00 -08:00
2016-04-01 10:42:39 -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-05-09 15:30:02 -07:00
2016-04-20 18:46:54 -07:00
2016-02-09 15:12:00 -08:00
2016-03-30 23:05:22 +05:30
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-10 14:06:07 -07:00
2016-05-10 14:06:07 -07:00
2016-04-18 10:18:41 -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-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