• H
    sync with upstream @21706995 · 80e5b0d9
    hans@chromium.org 提交于
    Fixed race condition reported by Dave Smit (dizzyd@dizzyd,com)
    on the leveldb mailing list.  We were not signalling
    waiters after a trivial move from level-0.  The result was
    that in some cases (hard to reproduce), a write would get
    stuck forever waiting for the number of level-0 files to drop
    below its hard limit.
    
    The new code is simpler: there is just one condition variable
    instead of two, and the condition variable is signalled after
    every piece of background work finishes.  Also, all compaction
    work (including for manual compactions) is done in the
    background thread, and therefore we can remove the
    "compacting_" variable.
    
    
    
    git-svn-id: https://leveldb.googlecode.com/svn/trunk@31 62dab493-f737-651d-591e-8d6aee1b9529
    80e5b0d9
db_impl.cc 36.3 KB