apalis_sqlite/queries/
vacuum.rs1use std::time::Duration;
2
3use apalis_core::backend::{Backend, Vacuum};
4
5use crate::{Error, SqliteStorage};
6
7impl<Args> Vacuum for SqliteStorage<Args>
8where
9 Self: Backend<Error = Error>,
10 Args: Send,
11{
12 async fn vacuum(&mut self) -> Result<usize, Self::Error> {
13 let res = sqlx::query_file!("queries/backend/vacuum.sql")
14 .execute(&self.persistence.pool)
15 .await?;
16 Ok(res.rows_affected() as usize)
17 }
18
19 async fn vacuum_before(&mut self, duration: Duration) -> Result<usize, Self::Error> {
20 let res = sqlx::query_file!(
21 "queries/backend/vacuum_before.sql",
22 duration.as_secs() as i64
23 )
24 .execute(&self.persistence.pool)
25 .await?;
26 Ok(res.rows_affected() as usize)
27 }
28}