aboutsummaryrefslogtreecommitdiff
path: root/src/db/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/db/mod.rs')
-rw-r--r--src/db/mod.rs22
1 files changed, 8 insertions, 14 deletions
diff --git a/src/db/mod.rs b/src/db/mod.rs
index fe1ab79b..464be561 100644
--- a/src/db/mod.rs
+++ b/src/db/mod.rs
@@ -373,24 +373,18 @@ pub async fn backup_database(conn: &mut DbConn) -> Result<String, Error> {
err!("PostgreSQL and MySQL/MariaDB do not support this backup feature");
}
sqlite {
- backup_sqlite_database(conn)
+ let db_url = CONFIG.database_url();
+ let db_path = std::path::Path::new(&db_url).parent().unwrap();
+ let backup_file = db_path
+ .join(format!("db_{}.sqlite3", chrono::Utc::now().format("%Y%m%d_%H%M%S")))
+ .to_string_lossy()
+ .into_owned();
+ diesel::sql_query(format!("VACUUM INTO '{backup_file}'")).execute(conn)?;
+ Ok(backup_file)
}
}
}
-#[cfg(sqlite)]
-pub fn backup_sqlite_database(conn: &mut diesel::sqlite::SqliteConnection) -> Result<String, Error> {
- use diesel::RunQueryDsl;
- let db_url = CONFIG.database_url();
- let db_path = std::path::Path::new(&db_url).parent().unwrap();
- let backup_file = db_path
- .join(format!("db_{}.sqlite3", chrono::Utc::now().format("%Y%m%d_%H%M%S")))
- .to_string_lossy()
- .into_owned();
- diesel::sql_query(format!("VACUUM INTO '{backup_file}'")).execute(conn)?;
- Ok(backup_file)
-}
-
/// Get the SQL Server version
pub async fn get_sql_server_version(conn: &mut DbConn) -> String {
db_run! {@raw conn: