Type Alias fjall::TxKeyspace

source ·
pub type TxKeyspace = TransactionalKeyspace;
Expand description

Aliased Type§

struct TxKeyspace { /* private fields */ }

Implementations§

source§

impl TxKeyspace

source

pub fn write_tx(&self) -> WriteTransaction<'_>

Starts a new writeable transaction.

source

pub fn read_tx(&self) -> ReadTransaction

Starts a new read-only transaction.

source

pub fn persist(&self, mode: PersistMode) -> Result<()>

Flushes the active journal to OS buffers. The durability depends on the PersistMode used.

Persisting only affects durability, NOT consistency! Even without flushing data is crash-safe.

§Examples
let keyspace = Config::new(folder).open_transactional()?;
let items = keyspace.open_partition("my_items", PartitionCreateOptions::default())?;

items.insert("a", "hello")?;

keyspace.persist(PersistMode::SyncAll)?;
§Errors

Returns error, if an IO error occurred.

source

pub fn open_partition( &self, name: &str, create_options: PartitionCreateOptions, ) -> Result<TxPartitionHandle>

Creates or opens a keyspace partition.

§Errors

Returns error, if an IO error occurred.

§Panics

Panics if the partition name includes characters other than: a-z A-Z 0-9 _ -

source

pub fn partition_count(&self) -> usize

Returns the amount of partitions

source

pub fn list_partitions(&self) -> Vec<Arc<str>>

Gets a list of all partition names in the keyspace

source

pub fn partition_exists(&self, name: &str) -> bool

Returns true if the partition with the given name exists.

source

pub fn delete_partition(&self, handle: TxPartitionHandle) -> Result<()>

Destroys the partition, removing all data associated with it.

§Errors

Will return Err if an IO error occurs.

source

pub fn write_buffer_size(&self) -> u64

Returns the current write buffer size (active + sealed memtables).

source

pub fn journal_count(&self) -> usize

Returns the amount of journals on disk.

source

pub fn disk_space(&self) -> u64

Returns the disk space usage of the entire keyspace.

source

pub fn open(config: Config) -> Result<Self>

Opens a keyspace in the given directory.

§Errors

Returns error, if an IO error occurred.