From 4f123f72ab18ee5ce260923f83f6d7c5c25f3c1c Mon Sep 17 00:00:00 2001 From: Neil Alexander Date: Wed, 17 Feb 2021 10:14:30 +0000 Subject: [PATCH] Only update exclude_from_sync if we're re-including it --- syncapi/storage/postgres/output_room_events_table.go | 2 +- syncapi/storage/sqlite3/output_room_events_table.go | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/syncapi/storage/postgres/output_room_events_table.go b/syncapi/storage/postgres/output_room_events_table.go index 28668de0..71241828 100644 --- a/syncapi/storage/postgres/output_room_events_table.go +++ b/syncapi/storage/postgres/output_room_events_table.go @@ -75,7 +75,7 @@ const insertEventSQL = "" + "INSERT INTO syncapi_output_room_events (" + "room_id, event_id, headered_event_json, type, sender, contains_url, add_state_ids, remove_state_ids, session_id, transaction_id, exclude_from_sync" + ") VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11) " + - "ON CONFLICT ON CONSTRAINT syncapi_event_id_idx DO UPDATE SET exclude_from_sync = $11 " + + "ON CONFLICT ON CONSTRAINT syncapi_event_id_idx DO UPDATE SET exclude_from_sync = $11 WHERE $11 == false" + "RETURNING id" const selectEventsSQL = "" + diff --git a/syncapi/storage/sqlite3/output_room_events_table.go b/syncapi/storage/sqlite3/output_room_events_table.go index 3c70a499..e9cad8dc 100644 --- a/syncapi/storage/sqlite3/output_room_events_table.go +++ b/syncapi/storage/sqlite3/output_room_events_table.go @@ -54,7 +54,7 @@ const insertEventSQL = "" + "INSERT INTO syncapi_output_room_events (" + "id, room_id, event_id, headered_event_json, type, sender, contains_url, add_state_ids, remove_state_ids, session_id, transaction_id, exclude_from_sync" + ") VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12) " + - "ON CONFLICT (event_id) DO UPDATE SET exclude_from_sync = $13" + "ON CONFLICT (event_id) DO UPDATE SET exclude_from_sync = $13 WHERE $14 == false" const selectEventsSQL = "" + "SELECT event_id, id, headered_event_json, session_id, exclude_from_sync, transaction_id FROM syncapi_output_room_events WHERE event_id = $1" @@ -303,6 +303,7 @@ func (s *outputRoomEventsStatements) InsertEvent( txnID, excludeFromSync, excludeFromSync, + excludeFromSync, ) return streamPos, err }