sdong
1760637539
CompactRange() refit level should confirm destination level is not empty ( #7261 )
...
Summary:
There is potential data race related CompactRange() with level refitting. After the compaction step and refitting step, some automatic compaction could put data to the destination level and cause the DB to be corrupted. Fix the bug by checking the target level to be empty.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/7261
Test Plan: Add a unit test, which would fail with "Corruption: L1 have overlapping ranges '666F6F' seq:6, type:1 vs. '626172' seq:2, type:1", and now it succeeds.
Reviewed By: ajkr
Differential Revision: D23142269
fbshipit-source-id: 28bc14d5ac934c192260b23a4ce3f10a95e3ee91
2020-08-17 14:21:53 -07:00
..
2020-07-22 17:25:20 -07:00
2020-08-14 11:29:52 -07:00
2020-08-17 14:21:53 -07:00
2020-08-03 15:23:04 -07:00
2020-08-03 15:23:04 -07:00
2020-08-06 14:25:34 -07:00
2020-06-17 10:57:40 -07:00
2020-07-28 13:05:34 -07:00
2020-07-29 12:24:13 -07:00
2020-07-20 14:19:48 -07:00
2020-07-22 18:32:52 -07:00
2020-07-22 18:32:52 -07:00
2020-07-02 19:25:41 -07:00
2020-08-14 20:12:44 -07:00
2020-02-20 12:09:57 -08:00
2020-07-09 14:35:17 -07:00
2020-05-12 18:23:33 -07:00
2020-08-12 19:30:00 -07:00
2020-07-02 19:25:41 -07:00
2020-08-11 12:41:30 -07:00
2020-07-09 14:35:17 -07:00
2020-07-02 10:22:43 -07:00
2020-08-11 12:41:30 -07:00
2020-08-17 14:21:53 -07:00
2020-07-09 14:35:17 -07:00
2020-07-02 10:22:43 -07:00
2020-06-24 19:07:08 -07:00
2020-07-09 14:35:17 -07:00
2020-06-15 10:47:02 -07:00
2020-06-15 10:47:02 -07:00
2020-07-02 10:22:43 -07:00
2020-08-11 12:41:30 -07:00
2020-06-24 16:22:49 -07:00
2020-02-20 12:09:57 -08:00
2020-08-05 10:44:57 -07:00
2020-08-04 18:52:08 -07:00
2020-07-09 14:35:17 -07:00
2020-07-02 10:22:43 -07:00
2020-03-20 15:26:10 -07:00
2020-07-02 10:22:43 -07:00
2020-07-09 14:35:17 -07:00
2020-07-09 14:35:17 -07:00
2020-08-11 12:41:30 -07:00
2020-08-11 12:41:30 -07:00
2020-07-09 14:35:17 -07:00
2020-08-11 12:41:30 -07:00
2020-07-09 14:35:17 -07:00
2020-07-29 13:39:29 -07:00
2020-07-02 10:22:43 -07:00
2020-08-14 11:29:52 -07:00
2020-08-11 12:41:30 -07:00
2020-08-14 20:12:44 -07:00
2020-08-11 12:41:30 -07:00
2020-08-11 12:41:30 -07:00
2020-08-12 17:31:23 -07:00
2020-08-14 19:20:58 -07:00
2020-07-02 10:22:43 -07:00
2020-07-09 14:35:17 -07:00
2020-02-20 12:09:57 -08:00
2020-07-07 17:26:16 -07:00
2020-07-07 17:26:16 -07:00
2020-07-02 10:22:43 -07:00
2020-07-17 23:27:21 -07:00
2020-07-15 11:03:58 -07:00
2020-07-15 11:03:58 -07:00
2020-06-17 10:57:40 -07:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-07-09 14:35:17 -07:00
2020-08-12 17:31:23 -07:00
2020-08-12 17:31:23 -07:00
2020-07-09 14:35:17 -07:00
2020-07-09 14:35:17 -07:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-08-06 17:19:41 -07:00
2020-08-12 17:31:23 -07:00
2020-08-11 12:41:30 -07:00
2020-06-17 10:57:40 -07:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-06-09 16:51:23 -07:00
2020-04-15 17:40:44 -07:00
2020-08-12 17:31:23 -07:00
2020-08-12 17:31:23 -07:00
2020-07-09 14:35:17 -07:00
2020-06-24 19:07:08 -07:00
2020-02-20 12:09:57 -08:00
2020-05-04 15:08:13 -07:00
2020-08-11 12:41:30 -07:00
2020-02-20 12:09:57 -08:00
2020-06-11 18:42:10 -07:00
2020-04-20 11:39:31 -07:00
2020-06-03 15:55:03 -07:00
2020-06-18 10:09:12 -07:00
2020-03-27 16:04:43 -07:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-03-04 20:15:25 -08:00
2020-08-12 17:31:23 -07:00
2020-06-27 08:57:31 -07:00
2020-06-04 15:46:27 -07:00
2020-08-05 10:44:57 -07:00
2020-03-02 16:01:00 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-07-02 10:22:43 -07:00
2020-02-20 12:09:57 -08:00
2020-04-20 13:24:25 -07:00
2020-02-20 12:09:57 -08:00
2020-07-09 14:35:17 -07:00
2020-02-20 12:09:57 -08:00
2020-08-10 10:48:05 -07:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-08-14 19:20:58 -07:00
2020-07-02 10:22:43 -07:00
2020-08-12 17:31:23 -07:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-06-29 14:53:17 -07:00
2020-08-03 15:23:04 -07:00
2020-06-03 15:55:03 -07:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-08-12 17:31:23 -07:00
2020-08-12 17:31:23 -07:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-06-30 15:31:21 -07:00
2020-08-11 09:23:17 -07:00
2020-06-09 16:51:23 -07:00
2020-06-18 10:09:12 -07:00
2020-06-18 10:09:12 -07:00
2020-08-05 16:34:38 -07:00
2020-08-05 16:34:38 -07:00
2020-08-12 13:31:09 -07:00
2020-08-12 17:31:23 -07:00
2020-08-12 17:31:23 -07:00
2020-08-12 17:31:23 -07:00
2020-08-05 16:34:38 -07:00
2020-08-05 16:34:38 -07:00
2020-08-05 16:34:38 -07:00
2020-08-12 17:31:23 -07:00
2020-08-12 17:31:23 -07:00
2020-08-12 17:31:23 -07:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-07-02 19:25:41 -07:00
2020-06-30 12:31:30 -07:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-20 12:09:57 -08:00
2020-02-28 14:14:03 -08:00
2020-02-20 12:09:57 -08:00