From 37c5127bbcf718a9fea92c389386a9c15fad7b50 Mon Sep 17 00:00:00 2001 From: Philippe Loctaux
Date: Sat, 6 May 2023 16:38:22 +0200
Subject: [PATCH] admin/maintenance: sqlite vacuum
---
crates/database/sqlx-data.json | 10 +++++++
crates/database/src/tables/settings.rs | 9 +++++++
crates/ezidam/src/routes/admin.rs | 1 +
crates/ezidam/src/routes/admin/settings.rs | 26 +++++++++++++++++++
.../admin/settings/maintenance.html.tera | 14 ++--------
crates/settings/src/database.rs | 4 +++
6 files changed, 52 insertions(+), 12 deletions(-)
diff --git a/crates/database/sqlx-data.json b/crates/database/sqlx-data.json
index 76710b4..7c415d0 100644
--- a/crates/database/sqlx-data.json
+++ b/crates/database/sqlx-data.json
@@ -536,6 +536,16 @@
},
"query": "update totp_login_requests\n\nset used_at = CURRENT_TIMESTAMP\n\nwhere token is ?"
},
+ "657fdc2b228b14a6aba717e5083daf48204274ab62d73ec8968bcd0c7568b157": {
+ "describe": {
+ "columns": [],
+ "nullable": [],
+ "parameters": {
+ "Right": 0
+ }
+ },
+ "query": "vacuum"
+ },
"68cfa3d135eb4cdbdbcb3b943518b4ac09c371af689c444eb439a37f91ecf7a5": {
"describe": {
"columns": [],
diff --git a/crates/database/src/tables/settings.rs b/crates/database/src/tables/settings.rs
index 6c9c096..3ada076 100644
--- a/crates/database/src/tables/settings.rs
+++ b/crates/database/src/tables/settings.rs
@@ -38,6 +38,15 @@ impl Settings {
.map_err(handle_error)
}
+ pub async fn vacuum(conn: impl SqliteExecutor<'_>) -> Result<(), Error> {
+ sqlx::query!("vacuum")
+ .execute(conn)
+ .await
+ .map_err(handle_error)?;
+
+ Ok(())
+ }
+
pub async fn set_business_name(
conn: impl SqliteExecutor<'_>,
value: Option<&str>,
diff --git a/crates/ezidam/src/routes/admin.rs b/crates/ezidam/src/routes/admin.rs
index 2f05ff7..cd6590c 100644
--- a/crates/ezidam/src/routes/admin.rs
+++ b/crates/ezidam/src/routes/admin.rs
@@ -17,6 +17,7 @@ pub fn routes() -> Vec