facebook / rocksdb

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

Create C API function to iterate over WriteBatch for custom Column Families #12718

Closed konstantinvilin closed 5 days ago

konstantinvilin commented 1 month ago

Create C API function for iterating over WriteBatch for custom Column Families

Summary: Adding function to C API that exposes column family specific methods to iterate over WriteBatch: put_cf, delete_cf and merge_cf. This is required when the one needs to read changes for any non-default column family. Without that functionality it is impossible to iterate over changes in WAL that are relevant to custom column families.

Fixes #12790

Testing: Added WriteBatch iteration test to "columnfamilies" section of C API unit tests

facebook-github-bot commented 6 days ago

@ajkr has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

facebook-github-bot commented 6 days ago

@konstantinvilin has updated the pull request. You must reimport the pull request before landing.

facebook-github-bot commented 6 days ago

@ajkr has imported this pull request. If you are a Meta employee, you can view this diff on Phabricator.

konstantinvilin commented 5 days ago

Is there something I need to do to fix Facebook Internal - Linter failing? I cannot see what is the problem.

ajkr commented 5 days ago

Is there something I need to do to fix Facebook Internal - Linter failing? I cannot see what is the problem.

No, it's complaining about an existing pattern, so I will merge it as is.

facebook-github-bot commented 5 days ago

@ajkr merged this pull request in facebook/rocksdb@5ecb92760a3ea856c8f9440c822e459df895db62.

konstantinvilin commented 5 days ago

Thank you!