leveldb removes old / replaced revisions of a key during level to level compactions. It does NOT remove these when copying memory to a new Level 0 file. This causes the Level 0 files to have more bloat.
Also review recovery file processing. It may have same bug.
Fixed in table builder.