pub struct EnvironmentBuilder { /* private fields */ }
mdbx
only.Expand description
Options for opening or creating an environment.
Implementations§
Source§impl EnvironmentBuilder
impl EnvironmentBuilder
Sourcepub fn open(&self, path: &Path) -> Result<Environment, Error>
pub fn open(&self, path: &Path) -> Result<Environment, Error>
Open an environment.
Database files will be opened with 644 permissions.
Sourcepub fn open_with_permissions(
&self,
path: &Path,
mode: u32,
) -> Result<Environment, Error>
pub fn open_with_permissions( &self, path: &Path, mode: u32, ) -> Result<Environment, Error>
Open an environment with the provided UNIX permissions.
The path may not contain the null character.
Sourcepub fn set_kind(&mut self, kind: EnvironmentKind) -> &mut EnvironmentBuilder
pub fn set_kind(&mut self, kind: EnvironmentKind) -> &mut EnvironmentBuilder
Configures how this environment will be opened.
Sourcepub fn write_map(&mut self) -> &mut EnvironmentBuilder
pub fn write_map(&mut self) -> &mut EnvironmentBuilder
Opens the environment with mdbx WRITEMAP
See also EnvironmentKind
Sourcepub fn set_flags(&mut self, flags: EnvironmentFlags) -> &mut EnvironmentBuilder
pub fn set_flags(&mut self, flags: EnvironmentFlags) -> &mut EnvironmentBuilder
Sets the provided options in the environment.
Sourcepub fn set_max_readers(&mut self, max_readers: u64) -> &mut EnvironmentBuilder
pub fn set_max_readers(&mut self, max_readers: u64) -> &mut EnvironmentBuilder
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_dbs(&mut self, v: usize) -> &mut EnvironmentBuilder
pub fn set_max_dbs(&mut self, v: usize) -> &mut EnvironmentBuilder
Sets the maximum number of named databases for the environment.
This function is only needed if multiple databases will be used in the environment. Simpler applications that use the environment as a single unnamed database 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.
Sourcepub fn set_sync_bytes(&mut self, v: usize) -> &mut EnvironmentBuilder
pub fn set_sync_bytes(&mut self, v: usize) -> &mut EnvironmentBuilder
Sets the interprocess/shared threshold to force flush the data buffers to disk, if
SyncMode::SafeNoSync
is used.
Sourcepub fn set_sync_period(&mut self, v: Duration) -> &mut EnvironmentBuilder
pub fn set_sync_period(&mut self, v: Duration) -> &mut EnvironmentBuilder
Sets the interprocess/shared relative period since the last unsteady commit to force flush
the data buffers to disk, if SyncMode::SafeNoSync
is used.
pub fn set_rp_augment_limit(&mut self, v: u64) -> &mut EnvironmentBuilder
pub fn set_loose_limit(&mut self, v: u64) -> &mut EnvironmentBuilder
pub fn set_dp_reserve_limit(&mut self, v: u64) -> &mut EnvironmentBuilder
pub fn set_txn_dp_limit(&mut self, v: u64) -> &mut EnvironmentBuilder
pub fn set_spill_max_denominator(&mut self, v: u8) -> &mut EnvironmentBuilder
pub fn set_spill_min_denominator(&mut self, v: u8) -> &mut EnvironmentBuilder
Sourcepub fn set_geometry<R>(
&mut self,
geometry: Geometry<R>,
) -> &mut EnvironmentBuilderwhere
R: RangeBounds<usize>,
pub fn set_geometry<R>(
&mut self,
geometry: Geometry<R>,
) -> &mut EnvironmentBuilderwhere
R: RangeBounds<usize>,
Set all size-related parameters of environment, including page size and the min/max size of the memory map.
pub fn set_log_level(&mut self, log_level: i32) -> &mut EnvironmentBuilder
Sourcepub fn set_handle_slow_readers(
&mut self,
hsr: extern "C" fn(_: *const MDBX_env, _: *const MDBX_txn, _: i32, _: u64, _: u64, _: u32, _: usize, _: i32) -> HandleSlowReadersReturnCode,
) -> &mut EnvironmentBuilder
pub fn set_handle_slow_readers( &mut self, hsr: extern "C" fn(_: *const MDBX_env, _: *const MDBX_txn, _: i32, _: u64, _: u64, _: u32, _: usize, _: i32) -> HandleSlowReadersReturnCode, ) -> &mut EnvironmentBuilder
Set the Handle-Slow-Readers callback. See HandleSlowReadersCallback
for more
information.
Source§impl EnvironmentBuilder
impl EnvironmentBuilder
Sourcepub fn set_max_read_transaction_duration(
&mut self,
max_read_transaction_duration: MaxReadTransactionDuration,
) -> &mut EnvironmentBuilder
pub fn set_max_read_transaction_duration( &mut self, max_read_transaction_duration: MaxReadTransactionDuration, ) -> &mut EnvironmentBuilder
Set the maximum time a read-only transaction can be open.
Trait Implementations§
Source§impl Clone for EnvironmentBuilder
impl Clone for EnvironmentBuilder
Source§fn clone(&self) -> EnvironmentBuilder
fn clone(&self) -> EnvironmentBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for EnvironmentBuilder
impl RefUnwindSafe for EnvironmentBuilder
impl Send for EnvironmentBuilder
impl Sync for EnvironmentBuilder
impl Unpin for EnvironmentBuilder
impl UnwindSafe for EnvironmentBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self
to use its Display
implementation when
Debug
-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.§impl<T> TryConv for T
impl<T> TryConv for T
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
impl<T> MaybeDebug for Twhere
T: Debug,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 288 bytes