Missing SST File

Shane McEwan shane at mcewan.id.au
Fri Jan 11 04:50:07 EST 2013


I posted this to the LevelDB mailing list with little success. Apologies 
if you've already seen this from there.

We've started getting errors in a LevelDB LOG file about a missing SST file:

  2013/01/10-15:08:12.714525 7fb0767fa700 Compacting 14 at 0 + 7 at 1 files
  2013/01/10-15:08:25.121147 7fb0767fa700 compacted to: files[ 14 7 50 
105 0 0 0 ]
  2013/01/10-15:08:25.121488 7fb0767fa700 Delete type=2 #111404
  2013/01/10-15:08:25.147976 7fb0767fa700 Compaction error: IO error: 
No such file or directory

I assume it means we've got an SST file listed in the MANIFEST file that 
doesn't exist anymore. The SST in question doesn't exist in any of the 
snapshots I have around the time it was likely to have been created.

I saw mention of a bug fixed in the latest LevelDB[1] that could cause 
what we're seeing except that we haven't run out of disk space so I'm 
not sure we've hit that. I'm less interested in HOW it happened since 
we've moved to different hardware since then.

We haven't noticed any missing data in our database (perhaps Riak 
replicas are helping there?) and even if there is something missing the 
nature of our data means that we can probably live without it.

My question is, can we remove the offending file's entry out of the 
MANIFEST file somehow? Or will it sort itself out? Currently our idle 
test database is spinning at 100% CPU trying to compact a file that 
doesn't exist.

[1] https://groups.google.com/forum/#!msg/leveldb/Kc9JxuIUu5A/9P0N9RL4ar8J

Any advice would be greatly appreciated. Thanks!


More information about the riak-users mailing list