improvement: flush after every request that manipulates the db
This commit is contained in:
parent
b2a1505535
commit
6dbe195695
30 changed files with 216 additions and 105 deletions
|
@ -17,7 +17,7 @@ use rocket::{delete, get, post, put};
|
|||
feature = "conduit_bin",
|
||||
post("/_matrix/client/unstable/room_keys/version", data = "<body>")
|
||||
)]
|
||||
pub fn create_backup_route(
|
||||
pub async fn create_backup_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<create_backup::Request>,
|
||||
) -> ConduitResult<create_backup::Response> {
|
||||
|
@ -26,6 +26,8 @@ pub fn create_backup_route(
|
|||
.key_backups
|
||||
.create_backup(&sender_user, &body.algorithm, &db.globals)?;
|
||||
|
||||
db.flush().await?;
|
||||
|
||||
Ok(create_backup::Response { version }.into())
|
||||
}
|
||||
|
||||
|
@ -33,7 +35,7 @@ pub fn create_backup_route(
|
|||
feature = "conduit_bin",
|
||||
put("/_matrix/client/unstable/room_keys/version/<_>", data = "<body>")
|
||||
)]
|
||||
pub fn update_backup_route(
|
||||
pub async fn update_backup_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<update_backup::Request<'_>>,
|
||||
) -> ConduitResult<update_backup::Response> {
|
||||
|
@ -41,6 +43,8 @@ pub fn update_backup_route(
|
|||
db.key_backups
|
||||
.update_backup(&sender_user, &body.version, &body.algorithm, &db.globals)?;
|
||||
|
||||
db.flush().await?;
|
||||
|
||||
Ok(update_backup::Response.into())
|
||||
}
|
||||
|
||||
|
@ -48,7 +52,7 @@ pub fn update_backup_route(
|
|||
feature = "conduit_bin",
|
||||
get("/_matrix/client/unstable/room_keys/version", data = "<body>")
|
||||
)]
|
||||
pub fn get_latest_backup_route(
|
||||
pub async fn get_latest_backup_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<get_latest_backup::Request>,
|
||||
) -> ConduitResult<get_latest_backup::Response> {
|
||||
|
@ -75,7 +79,7 @@ pub fn get_latest_backup_route(
|
|||
feature = "conduit_bin",
|
||||
get("/_matrix/client/unstable/room_keys/version/<_>", data = "<body>")
|
||||
)]
|
||||
pub fn get_backup_route(
|
||||
pub async fn get_backup_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<get_backup::Request<'_>>,
|
||||
) -> ConduitResult<get_backup::Response> {
|
||||
|
@ -101,7 +105,7 @@ pub fn get_backup_route(
|
|||
feature = "conduit_bin",
|
||||
delete("/_matrix/client/unstable/room_keys/version/<_>", data = "<body>")
|
||||
)]
|
||||
pub fn delete_backup_route(
|
||||
pub async fn delete_backup_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<delete_backup::Request>,
|
||||
) -> ConduitResult<delete_backup::Response> {
|
||||
|
@ -109,6 +113,8 @@ pub fn delete_backup_route(
|
|||
|
||||
db.key_backups.delete_backup(&sender_user, &body.version)?;
|
||||
|
||||
db.flush().await?;
|
||||
|
||||
Ok(delete_backup::Response.into())
|
||||
}
|
||||
|
||||
|
@ -117,7 +123,7 @@ pub fn delete_backup_route(
|
|||
feature = "conduit_bin",
|
||||
put("/_matrix/client/unstable/room_keys/keys", data = "<body>")
|
||||
)]
|
||||
pub fn add_backup_keys_route(
|
||||
pub async fn add_backup_keys_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<add_backup_keys::Request<'_>>,
|
||||
) -> ConduitResult<add_backup_keys::Response> {
|
||||
|
@ -136,6 +142,8 @@ pub fn add_backup_keys_route(
|
|||
}
|
||||
}
|
||||
|
||||
db.flush().await?;
|
||||
|
||||
Ok(add_backup_keys::Response {
|
||||
count: (db.key_backups.count_keys(sender_user, &body.version)? as u32).into(),
|
||||
etag: db.key_backups.get_etag(sender_user, &body.version)?,
|
||||
|
@ -148,7 +156,7 @@ pub fn add_backup_keys_route(
|
|||
feature = "conduit_bin",
|
||||
put("/_matrix/client/unstable/room_keys/keys/<_>", data = "<body>")
|
||||
)]
|
||||
pub fn add_backup_key_sessions_route(
|
||||
pub async fn add_backup_key_sessions_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<add_backup_key_sessions::Request>,
|
||||
) -> ConduitResult<add_backup_key_sessions::Response> {
|
||||
|
@ -165,6 +173,8 @@ pub fn add_backup_key_sessions_route(
|
|||
)?
|
||||
}
|
||||
|
||||
db.flush().await?;
|
||||
|
||||
Ok(add_backup_key_sessions::Response {
|
||||
count: (db.key_backups.count_keys(sender_user, &body.version)? as u32).into(),
|
||||
etag: db.key_backups.get_etag(sender_user, &body.version)?,
|
||||
|
@ -177,7 +187,7 @@ pub fn add_backup_key_sessions_route(
|
|||
feature = "conduit_bin",
|
||||
put("/_matrix/client/unstable/room_keys/keys/<_>/<_>", data = "<body>")
|
||||
)]
|
||||
pub fn add_backup_key_session_route(
|
||||
pub async fn add_backup_key_session_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<add_backup_key_session::Request>,
|
||||
) -> ConduitResult<add_backup_key_session::Response> {
|
||||
|
@ -192,6 +202,8 @@ pub fn add_backup_key_session_route(
|
|||
&db.globals,
|
||||
)?;
|
||||
|
||||
db.flush().await?;
|
||||
|
||||
Ok(add_backup_key_session::Response {
|
||||
count: (db.key_backups.count_keys(sender_user, &body.version)? as u32).into(),
|
||||
etag: db.key_backups.get_etag(sender_user, &body.version)?,
|
||||
|
@ -203,7 +215,7 @@ pub fn add_backup_key_session_route(
|
|||
feature = "conduit_bin",
|
||||
get("/_matrix/client/unstable/room_keys/keys", data = "<body>")
|
||||
)]
|
||||
pub fn get_backup_keys_route(
|
||||
pub async fn get_backup_keys_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<get_backup_keys::Request<'_>>,
|
||||
) -> ConduitResult<get_backup_keys::Response> {
|
||||
|
@ -218,7 +230,7 @@ pub fn get_backup_keys_route(
|
|||
feature = "conduit_bin",
|
||||
get("/_matrix/client/unstable/room_keys/keys/<_>", data = "<body>")
|
||||
)]
|
||||
pub fn get_backup_key_sessions_route(
|
||||
pub async fn get_backup_key_sessions_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<get_backup_key_sessions::Request>,
|
||||
) -> ConduitResult<get_backup_key_sessions::Response> {
|
||||
|
@ -235,7 +247,7 @@ pub fn get_backup_key_sessions_route(
|
|||
feature = "conduit_bin",
|
||||
get("/_matrix/client/unstable/room_keys/keys/<_>/<_>", data = "<body>")
|
||||
)]
|
||||
pub fn get_backup_key_session_route(
|
||||
pub async fn get_backup_key_session_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<get_backup_key_session::Request>,
|
||||
) -> ConduitResult<get_backup_key_session::Response> {
|
||||
|
@ -252,7 +264,7 @@ pub fn get_backup_key_session_route(
|
|||
feature = "conduit_bin",
|
||||
delete("/_matrix/client/unstable/room_keys/keys", data = "<body>")
|
||||
)]
|
||||
pub fn delete_backup_keys_route(
|
||||
pub async fn delete_backup_keys_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<delete_backup_keys::Request>,
|
||||
) -> ConduitResult<delete_backup_keys::Response> {
|
||||
|
@ -261,6 +273,8 @@ pub fn delete_backup_keys_route(
|
|||
db.key_backups
|
||||
.delete_all_keys(&sender_user, &body.version)?;
|
||||
|
||||
db.flush().await?;
|
||||
|
||||
Ok(delete_backup_keys::Response {
|
||||
count: (db.key_backups.count_keys(sender_user, &body.version)? as u32).into(),
|
||||
etag: db.key_backups.get_etag(sender_user, &body.version)?,
|
||||
|
@ -272,7 +286,7 @@ pub fn delete_backup_keys_route(
|
|||
feature = "conduit_bin",
|
||||
delete("/_matrix/client/unstable/room_keys/keys/<_>", data = "<body>")
|
||||
)]
|
||||
pub fn delete_backup_key_sessions_route(
|
||||
pub async fn delete_backup_key_sessions_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<delete_backup_key_sessions::Request>,
|
||||
) -> ConduitResult<delete_backup_key_sessions::Response> {
|
||||
|
@ -281,6 +295,8 @@ pub fn delete_backup_key_sessions_route(
|
|||
db.key_backups
|
||||
.delete_room_keys(&sender_user, &body.version, &body.room_id)?;
|
||||
|
||||
db.flush().await?;
|
||||
|
||||
Ok(delete_backup_key_sessions::Response {
|
||||
count: (db.key_backups.count_keys(sender_user, &body.version)? as u32).into(),
|
||||
etag: db.key_backups.get_etag(sender_user, &body.version)?,
|
||||
|
@ -292,7 +308,7 @@ pub fn delete_backup_key_sessions_route(
|
|||
feature = "conduit_bin",
|
||||
delete("/_matrix/client/unstable/room_keys/keys/<_>/<_>", data = "<body>")
|
||||
)]
|
||||
pub fn delete_backup_key_session_route(
|
||||
pub async fn delete_backup_key_session_route(
|
||||
db: State<'_, Database>,
|
||||
body: Ruma<delete_backup_key_session::Request>,
|
||||
) -> ConduitResult<delete_backup_key_session::Response> {
|
||||
|
@ -301,6 +317,8 @@ pub fn delete_backup_key_session_route(
|
|||
db.key_backups
|
||||
.delete_room_key(&sender_user, &body.version, &body.room_id, &body.session_id)?;
|
||||
|
||||
db.flush().await?;
|
||||
|
||||
Ok(delete_backup_key_session::Response {
|
||||
count: (db.key_backups.count_keys(sender_user, &body.version)? as u32).into(),
|
||||
etag: db.key_backups.get_etag(sender_user, &body.version)?,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue