dain / leveldb

Port of LevelDB to Java

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Exception of Overlapping files thrown while compacting throw away all work done by that compaction

pcmind opened this issue · comments

Exception thrown while doing compaction will result in discarding compaction result. This exception is not as rare as one may like and result in losing costly compaction work (CPU/IO).

Detecting (computing) correctly overlapping files while compacting mem tables would avoid completely this exception and work been thrown away.

The frequency of this exception is related with the key set, order and speed in with they are inserted/deleted.

Removing exception handling done at DbImpl#L1214 and running the build, will most of the time result into some failed unit tests.