set_max_write_buffer_number

master
wjhuang2016 5 years ago
parent bf17f0ad1c
commit fbc8c4ccb3
  1. 35
      src/db_options.rs

@ -603,30 +603,15 @@ impl Options {
}
}
/// Sets the total maximum number of write buffers to maintain in memory including
/// copies of buffers that have already been flushed. Unlike
/// max_write_buffer_number, this parameter does not affect flushing.
/// This controls the minimum amount of write history that will be available
/// in memory for conflict checking when Transactions are used.
///
/// When using an OptimisticTransactionDB:
/// If this value is too low, some transactions may fail at commit time due
/// to not being able to determine whether there were any write conflicts.
///
/// When using a TransactionDB:
/// If Transaction::SetSnapshot is used, TransactionDB will read either
/// in-memory write buffers or SST files to do write-conflict checking.
/// Increasing this value can reduce the number of reads to SST files
/// done for conflict detection.
///
/// Setting this value to `0` will cause write buffers to be freed immediately
/// after they are flushed.
/// If this value is set to `-1`, 'max_write_buffer_number' will be used.
///
/// Default:
/// If using a TransactionDB/OptimisticTransactionDB, the default value will
/// be set to the value of 'max_write_buffer_number' if it is not explicitly
/// set by the user. Otherwise, the default is 0.
/// Sets the maximum number of write buffers that are built up in memory.
/// The default and the minimum number is 2, so that when 1 write buffer
/// is being flushed to storage, new writes can continue to the other
/// write buffer.
/// If max_write_buffer_number > 3, writing will be slowed down to
/// options.delayed_write_rate if we are writing to the last write buffer
/// allowed.
///
/// Default: `2`
///
/// # Example
///
@ -634,7 +619,7 @@ impl Options {
/// use rocksdb::Options;
///
/// let mut opts = Options::default();
/// opts.set_min_write_buffer_number(4);
/// opts.set_max_write_buffer_number(4);
/// ```
pub fn set_max_write_buffer_number(&mut self, nbuf: c_int) {
unsafe {

Loading…
Cancel
Save