pub struct IncrementalVacuum;Available on crate feature
__sqlite-shared only.Expand description
PRAGMA incremental_vacuum, shrinking a database by releasing freelist pages without the full rewrite VACUUM performs.
Some(pages) releases at most that many pages, None the whole freelist. Only a database in AutoVacuumMode::Incremental has anything to release, on any other mode the assignment succeeds and does nothing.
use diesel::sqlite::AutoVacuumMode;
use diesel::sqlite::pragma::{AutoVacuum, IncrementalVacuum, SchemaPragma};
use std::num::NonZeroU32;
let conn = &mut SqliteConnection::establish(":memory:").unwrap();
AutoVacuum::set(AutoVacuumMode::Incremental, None, conn)?;
// Release at most 8 pages, then whatever is left.
IncrementalVacuum::set(NonZeroU32::new(8), None, conn)?;
IncrementalVacuum::set(None, None, conn)?;Trait Implementations§
Source§impl Clone for IncrementalVacuum
impl Clone for IncrementalVacuum
impl Copy for IncrementalVacuum
Source§impl Debug for IncrementalVacuum
impl Debug for IncrementalVacuum
Source§impl Pragma for IncrementalVacuum
impl Pragma for IncrementalVacuum
Source§impl WritePragma for IncrementalVacuum
impl WritePragma for IncrementalVacuum
Auto Trait Implementations§
impl Freeze for IncrementalVacuum
impl RefUnwindSafe for IncrementalVacuum
impl Send for IncrementalVacuum
impl Sync for IncrementalVacuum
impl Unpin for IncrementalVacuum
impl UnsafeUnpin for IncrementalVacuum
impl UnwindSafe for IncrementalVacuum
Blanket Implementations§
Source§impl<T> AggregateExpressionMethods for T
impl<T> AggregateExpressionMethods for T
Source§fn aggregate_distinct(self) -> AggregateDistinct<Self>where
Self: DistinctDsl,
fn aggregate_distinct(self) -> AggregateDistinct<Self>where
Self: DistinctDsl,
DISTINCT modifier for aggregate functions Read moreSource§fn aggregate_all(self) -> AggregateAll<Self>where
Self: AllDsl,
fn aggregate_all(self) -> AggregateAll<Self>where
Self: AllDsl,
ALL modifier for aggregate functions Read moreSource§fn aggregate_filter<P>(self, f: P) -> AggregateFilter<Self, P>
fn aggregate_filter<P>(self, f: P) -> AggregateFilter<Self, P>
Add an aggregate function filter Read more
Source§fn aggregate_order<O>(self, o: O) -> AggregateOrder<Self, O>where
Self: OrderAggregateDsl<O>,
fn aggregate_order<O>(self, o: O) -> AggregateOrder<Self, O>where
Self: OrderAggregateDsl<O>,
Add an aggregate function order Read more
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> IntoSql for T
impl<T> IntoSql for T
Source§impl<P> SchemaPragma for P
impl<P> SchemaPragma for P
Source§fn get<Row>(
schema: Option<&str>,
conn: &mut SqliteConnection,
) -> QueryResult<Row>where
Self: ReadPragma,
Sqlite: QueryMetadata<Self::SqlType>,
Row: FromSqlRow<Self::SqlType, Sqlite>,
fn get<Row>(
schema: Option<&str>,
conn: &mut SqliteConnection,
) -> QueryResult<Row>where
Self: ReadPragma,
Sqlite: QueryMetadata<Self::SqlType>,
Row: FromSqlRow<Self::SqlType, Sqlite>,
Available on crate feature
__sqlite-shared only.Read the first row, returning
Error::NotFound if the pragma returns none.Source§fn get_all<Row>(
schema: Option<&str>,
conn: &mut SqliteConnection,
) -> QueryResult<Vec<Row>>where
Self: ReadPragma,
Sqlite: QueryMetadata<Self::SqlType>,
Row: FromSqlRow<Self::SqlType, Sqlite>,
fn get_all<Row>(
schema: Option<&str>,
conn: &mut SqliteConnection,
) -> QueryResult<Vec<Row>>where
Self: ReadPragma,
Sqlite: QueryMetadata<Self::SqlType>,
Row: FromSqlRow<Self::SqlType, Sqlite>,
Available on crate feature
__sqlite-shared only.Read every row.
Source§fn set<'a>(
argument: impl Into<Self::Argument<'a>>,
schema: Option<&str>,
conn: &mut SqliteConnection,
) -> QueryResult<()>where
Self: WritePragma,
fn set<'a>(
argument: impl Into<Self::Argument<'a>>,
schema: Option<&str>,
conn: &mut SqliteConnection,
) -> QueryResult<()>where
Self: WritePragma,
Available on crate feature
__sqlite-shared only.Assign
argument, running the statement to completion without confirming the value SQLite applied.Source§impl<T> WindowExpressionMethods for T
impl<T> WindowExpressionMethods for T
Source§fn over(self) -> Over<Self>where
Self: OverDsl,
fn over(self) -> Over<Self>where
Self: OverDsl,
Turn a function call into a window function call Read more
Source§fn window_filter<P>(self, f: P) -> WindowFilter<Self, P>
fn window_filter<P>(self, f: P) -> WindowFilter<Self, P>
Add a filter to the current window function Read more
Source§fn partition_by<E>(self, expr: E) -> PartitionBy<Self, E>where
Self: PartitionByDsl<E>,
fn partition_by<E>(self, expr: E) -> PartitionBy<Self, E>where
Self: PartitionByDsl<E>,
Add a partition clause to the current window function Read more
Source§fn window_order<E>(self, expr: E) -> WindowOrder<Self, E>where
Self: OrderWindowDsl<E>,
fn window_order<E>(self, expr: E) -> WindowOrder<Self, E>where
Self: OrderWindowDsl<E>,
Add a order clause to the current window function Read more