You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
From looking at the code, it seems that currently its not supported to close the db while theres a live put request in process.
this could be the result of facebook/rocksdb@1e9bf25#diff-d9341fbe2a5d4089b93b22c5ed7f666bc311b378c26d0786f4b50c290e460187 since the db mutex is not protecting the part of the PreprocessWrite anymore.
in any case, i think we need to understand whether its the users responsibility for waiting until the Put operation returns before calling Close() or destroying the db.
Q: Is it safe to close RocksDB while another thread is issuing read, write or manual compaction requests?
A: No. The users of RocksDB need to make sure all functions have finished before they close RocksDB. You can speed up the waiting by calling CancelAllBackgroundWork().
error:
the main thread has already returned from Close().
reproduce:
on hash 3349f79
in db/db_test.cc, ShuttingDownNotBlockStalledWrites test, change call to CancelAllBackgroundWork(db_, true); into Close();
need to check if its Upstreamable
The text was updated successfully, but these errors were encountered: