Skip to main content

EnvironmentBuilder

Struct EnvironmentBuilder 

Source
pub struct EnvironmentBuilder { /* private fields */ }
Available on crate feature mdbx only.
Expand description

Options for opening or creating an environment.

Implementations§

Source§

impl EnvironmentBuilder

Source

pub fn open(&self, path: &Path) -> Result<Environment, Error>

Open an environment.

Database files will be opened with 644 permissions.

Source

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.

Source

pub const fn set_kind( &mut self, kind: EnvironmentKind, ) -> &mut EnvironmentBuilder

Configures how this environment will be opened.

Source

pub const fn write_map(&mut self) -> &mut EnvironmentBuilder

Opens the environment with mdbx WRITEMAP

See also EnvironmentKind

Source

pub const fn set_flags( &mut self, flags: EnvironmentFlags, ) -> &mut EnvironmentBuilder

Sets the provided options in the environment.

Source

pub const 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 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.

Source

pub const 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.

Source

pub const 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.

Source

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.

Source

pub const fn set_rp_augment_limit(&mut self, v: u64) -> &mut EnvironmentBuilder

Source

pub const fn set_loose_limit(&mut self, v: u64) -> &mut EnvironmentBuilder

Source

pub const fn set_dp_reserve_limit(&mut self, v: u64) -> &mut EnvironmentBuilder

Source

pub const fn set_txn_dp_limit(&mut self, v: u64) -> &mut EnvironmentBuilder

Source

pub fn set_spill_max_denominator(&mut self, v: u8) -> &mut EnvironmentBuilder

Source

pub fn set_spill_min_denominator(&mut self, v: u8) -> &mut EnvironmentBuilder

Source

pub fn set_geometry<R>( &mut self, geometry: Geometry<R>, ) -> &mut EnvironmentBuilder
where R: RangeBounds<usize>,

Set all size-related parameters of environment, including page size and the min/max size of the memory map.

Source

pub const fn set_log_level(&mut self, log_level: i32) -> &mut EnvironmentBuilder

Source

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

Source

pub const 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

Source§

fn clone(&self) -> EnvironmentBuilder

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for EnvironmentBuilder

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit #126799)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ

Converts 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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
where F: FnOnce(&Self) -> bool,

Converts 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> MaybeDebug for T
where T: Debug,

§

impl<T> NonStaticAny for T
where T: ?Sized,

§

fn type_id(&self) -> TypeId

Returns the lifetime-erased type ID of self.
§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more

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