Priyesh K created HDDS-14856:
--------------------------------
Summary: Guard ManagedRocksDB direct iterators against concurrent
DB close (follow-up to HDDS-14800)
Key: HDDS-14856
URL: https://issues.apache.org/jira/browse/HDDS-14856
Project: Apache Ozone
Issue Type: Improvement
Reporter: Priyesh K
HDDS-14800 fixed a TOCTOU race condition for the main volume iterator path by
having {{ManagedRocksIterator}} hold the {{RocksDatabase}} reference counter
for the full lifetime of the iterator. This prevents the DB from being
physically destroyed while the iterator is in use.
However, the fix only applies to iterators created through
{{{}RocksDatabase.newIterator(){}}}. Several components bypass this layer and
call {{ManagedRocksDB.get().newIterator()}} directly, so the counter is never
acquired and the same race window exists for those iterators.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]