From 0a8aa1b6367258e542333fa4d3bed5826079d043 Mon Sep 17 00:00:00 2001 From: Jordan Terrell Date: Wed, 13 Feb 2019 06:17:26 -0600 Subject: [PATCH 1/2] Adding set_readahead_size setter to ReadOptions... --- src/db.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/db.rs b/src/db.rs index b871d87..4aa43dc 100644 --- a/src/db.rs +++ b/src/db.rs @@ -1721,6 +1721,18 @@ impl ReadOptions { pub fn set_total_order_seek(&mut self, v: bool) { unsafe { ffi::rocksdb_readoptions_set_total_order_seek(self.inner, v as c_uchar) } } + + /// ``` + /// use rocksdb::{ReadOptions}; + /// + /// let mut opts = ReadOptions::default(); + /// opts.set_readahead_size(4_194_304); // 4mb + /// ``` + pub fn set_readahead_size(&mut self, v: usize) { + unsafe { + ffi::rocksdb_readoptions_set_readahead_size(self.inner, v as size_t); + } + } } impl Default for ReadOptions { From df12ddbd57c61b7a74dca41517fff173ef62c0c9 Mon Sep 17 00:00:00 2001 From: Jordan Terrell Date: Wed, 13 Feb 2019 07:16:16 -0600 Subject: [PATCH 2/2] Adding more documentation to ReadOptions.set_readahead_size [skip ci]... --- src/db.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/db.rs b/src/db.rs index 4aa43dc..9113a80 100644 --- a/src/db.rs +++ b/src/db.rs @@ -1722,6 +1722,11 @@ impl ReadOptions { unsafe { ffi::rocksdb_readoptions_set_total_order_seek(self.inner, v as c_uchar) } } + /// If non-zero, an iterator will create a new table reader which + /// performs reads of the given size. Using a large size (> 2MB) can + /// improve the performance of forward iteration on spinning disks. + /// Default: 0 + /// /// ``` /// use rocksdb::{ReadOptions}; ///