facebook / rocksdb

A library that provides an embeddable, persistent key-value store for fast storage.
http://rocksdb.org
GNU General Public License v2.0
28.73k stars 6.34k forks source link

Save the key before calling PrepareValue() in the stress tests #13129

Closed ltamasi closed 2 weeks ago

ltamasi commented 2 weeks ago

Summary: The PrepareValue() call on an iterator can fail, for example due to our stress tests' read fault injection. Such a failure invalidates the iterator, which makes it illegal to call methods like key() on it and leads to assertion violations. The patch fixes this by saving the key before calling PrepareValue(), so we can still print it for debugging purposes in case the call fails.

Differential Revision: D65689225

facebook-github-bot commented 2 weeks ago

This pull request was exported from Phabricator. Differential Revision: D65689225

facebook-github-bot commented 2 weeks ago

This pull request was exported from Phabricator. Differential Revision: D65689225

facebook-github-bot commented 2 weeks ago

This pull request has been merged in facebook/rocksdb@a6ee297ac94e7237879588b52356033ec2dd0af7.