diff --git a/docs/api/options.rst b/docs/api/options.rst index 3f8bc7cf77205f620bef17f33a81f3a7a56139a2..5866cd0f39350de704cfba957c4d76e078f463a9 100644 --- a/docs/api/options.rst +++ b/docs/api/options.rst @@ -617,6 +617,14 @@ Options object | *Type:* ``int`` | *Default:* ``0`` + .. py:attribute:: verify_checksums_in_compaction + + If ``True``, compaction will verify checksum on every read that + happens as part of compaction. + + | *Type:* ``bool`` + | *Default:* ``True`` + .. py:attribute:: filter_deletes Use KeyMayExist API to filter deletes when this is true. diff --git a/rocksdb/_rocksdb.pyx b/rocksdb/_rocksdb.pyx index 41aafc44b75c04c5090eb8527f970d0f2df4792f..b98340e2c63a1cbe3df2573b40ed2c77e3f79b66 100644 --- a/rocksdb/_rocksdb.pyx +++ b/rocksdb/_rocksdb.pyx @@ -951,6 +951,12 @@ cdef class Options(object): def __set__(self, value): self.opts.bytes_per_sync = value + property verify_checksums_in_compaction: + def __get__(self): + return self.opts.verify_checksums_in_compaction + def __set__(self, value): + self.opts.verify_checksums_in_compaction = value + property filter_deletes: def __get__(self): return self.opts.filter_deletes diff --git a/rocksdb/options.pxd b/rocksdb/options.pxd index 92eae21a891fc97790c9bbeb68db0187c5b04143..f7f3b4e68efbd2ee12ae9ce0675801b5c9265646 100644 --- a/rocksdb/options.pxd +++ b/rocksdb/options.pxd @@ -98,6 +98,7 @@ cdef extern from "rocksdb/options.h" namespace "rocksdb": # TODO: enum { NONE, NORMAL, SEQUENTIAL, WILLNEED } access_hint_on_compaction_start cpp_bool use_adaptive_mutex uint64_t bytes_per_sync + cpp_bool verify_checksums_in_compaction # TODO: CompactionStyle compaction_style # TODO: CompactionOptionsUniversal compaction_options_universal cpp_bool filter_deletes