In issue #25 , we mention that "corruption_test" assertion expects memtable in LevelDB to push to level 2 while in pebblesDB, the memtable is fixed at level 0.
The workaround in issue #25 fix is to disable the assertion in the "corrpution_test" assertion:
// ASSERT_EQ(1, Property("leveldb.num-files-at-level" + NumberToString(last)));
A further investigation shows that there is compaction to memtable happening in PebblesDB, which is wrapped inside the function DBImpl::SequenceWriteBegin. It shares some logic with LevelDB's DBImpl::MakeRoomForWrite. I think DBImpl::SequenceWriteBegin logic can be overhauled to LevelDB's style
In issue #25 , we mention that "corruption_test" assertion expects memtable in LevelDB to push to level 2 while in pebblesDB, the memtable is fixed at level 0.
The workaround in issue #25 fix is to disable the assertion in the "corrpution_test" assertion:
// ASSERT_EQ(1, Property("leveldb.num-files-at-level" + NumberToString(last)));A further investigation shows that there is compaction to memtable happening in PebblesDB, which is wrapped inside the function
DBImpl::SequenceWriteBegin. It shares some logic with LevelDB'sDBImpl::MakeRoomForWrite. I thinkDBImpl::SequenceWriteBeginlogic can be overhauled to LevelDB's style