[][src]Struct seshat::RecoveryDatabase

pub struct RecoveryDatabase { /* fields omitted */ }

Database that can be used to reindex the events.

Reindexing the database may be needed if the index schema changes. This may happen occasionally on upgrades or if language settings for the database change.

Implementations

impl RecoveryDatabase[src]

pub fn new<P: AsRef<Path>>(path: P) -> Result<Self> where
    PathBuf: From<P>, 
[src]

Open a read-only Seshat database.

Arguments

  • path - The directory where the database will be stored in. This should be an empty directory if a new database should be created.

pub fn new_with_config<P: AsRef<Path>>(path: P, config: &Config) -> Result<Self> where
    PathBuf: From<P>, 
[src]

Open a recovery Seshat database with the provided config.

Arguments

  • path - The directory where the database will be stored in. This should be an empty directory if a new database should be created.

  • config - Configuration that changes the behaviour of the database.

pub fn delete_the_index(&mut self) -> Result<()>[src]

Delete the Seshat index, leaving only the events database.

After this operation is done, the index can be rebuilt.

pub fn load_events_deserialized(
    &self,
    limit: usize,
    from_event: Option<&Event>
) -> Result<Vec<Event>>
[src]

Load deserialized events from the database.

  • limit - The number of events to load.
  • from_event - The event where to continue loading from.

Events that fail to be deserialized will be filtered out.

pub fn load_events(
    &self,
    limit: usize,
    from_event: Option<&Event>
) -> Result<Vec<String>>
[src]

Load serialized events from the database.

  • limit - The number of events to load.
  • from_event - The event where to continue loading from.

pub fn open_index(&mut self) -> Result<()>[src]

Create and open a new index.

Returns ReindexError if the index wasn't deleted first.

pub fn info(&self) -> &RecoveryInfo[src]

Get the recovery info for the database.

pub fn index_events(&mut self, events: &[Event]) -> Result<()>[src]

Re-index a batch of events.

Arguments

  • events - The events that should be reindexed.

Returns ReindexError if the index wasn't previously deleted and opened.

pub fn commit(&mut self) -> Result<bool>[src]

Commit to the index.

Returns true if the commit was forwarded, false if not enough events are queued up.

Returns ReindexError if the index wasn't previously deleted and opened.

pub fn commit_and_close(self) -> Result<()>[src]

Commit the remaining added events and mark the reindex as done.

Returns ReindexError if the index wasn't previously deleted and opened.

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Downcast for T where
    T: Any

impl<T> Erased for T

impl<T> From<T> for T[src]

impl<T> Fruit for T where
    T: Send + Downcast, 
[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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