Struct libmdbx::DatabaseBuilder
source · pub struct DatabaseBuilder<E>where
E: DatabaseKind,{ /* private fields */ }Expand description
Options for opening or creating an environment.
Implementations§
source§impl<E> DatabaseBuilder<E>where
E: DatabaseKind,
impl<E> DatabaseBuilder<E>where
E: DatabaseKind,
sourcepub fn open(&self, path: &Path) -> Result<Database<E>>
pub fn open(&self, path: &Path) -> Result<Database<E>>
Open an environment.
Database files will be opened with 644 permissions.
sourcepub fn open_with_permissions(
&self,
path: &Path,
mode: mdbx_mode_t
) -> Result<Database<E>>
pub fn open_with_permissions(
&self,
path: &Path,
mode: mdbx_mode_t
) -> Result<Database<E>>
Open an environment with the provided UNIX permissions.
The path may not contain the null character.
sourcepub fn set_flags(&mut self, flags: DatabaseFlags) -> &mut Self
pub fn set_flags(&mut self, flags: DatabaseFlags) -> &mut Self
Sets the provided options in the environment.
sourcepub fn set_max_readers(&mut self, max_readers: c_uint) -> &mut Self
pub fn set_max_readers(&mut self, max_readers: c_uint) -> &mut Self
Sets the maximum number of threads or reader slots for the environment.
This defines the number of slots in the lock table that is used to track readers in the the environment. The default is 126. Starting a read-only transaction normally ties a lock table slot to the Transaction object until it or the [Environment] object is destroyed.
sourcepub fn set_max_tables(&mut self, v: usize) -> &mut Self
pub fn set_max_tables(&mut self, v: usize) -> &mut Self
Sets the maximum number of named tables for the environment.
This function is only needed if multiple tables will be used in the environment. Simpler applications that use the environment as a single unnamed table can ignore this option.
Currently a moderate number of slots are cheap but a huge number gets expensive: 7-120 words per transaction, and every [Transaction::open_db()] does a linear search of the opened slots.
pub fn set_rp_augment_limit(&mut self, v: u64) -> &mut Self
pub fn set_loose_limit(&mut self, v: u64) -> &mut Self
pub fn set_dp_reserve_limit(&mut self, v: u64) -> &mut Self
pub fn set_txn_dp_limit(&mut self, v: u64) -> &mut Self
pub fn set_spill_max_denominator(&mut self, v: u8) -> &mut Self
pub fn set_spill_min_denominator(&mut self, v: u8) -> &mut Self
sourcepub fn set_geometry<R: RangeBounds<usize>>(
&mut self,
geometry: Geometry<R>
) -> &mut Self
pub fn set_geometry<R: RangeBounds<usize>>(
&mut self,
geometry: Geometry<R>
) -> &mut Self
Set all size-related parameters of environment, including page size and the min/max size of the memory map.
Trait Implementations§
source§impl<E> Clone for DatabaseBuilder<E>where
E: DatabaseKind + Clone,
impl<E> Clone for DatabaseBuilder<E>where
E: DatabaseKind + Clone,
source§fn clone(&self) -> DatabaseBuilder<E>
fn clone(&self) -> DatabaseBuilder<E>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more