From ab80cea3d1c4e10b641880ead2cdb70d23b7ff12 Mon Sep 17 00:00:00 2001 From: Till Faelligen <2353100+S7evinK@users.noreply.github.com> Date: Wed, 1 Feb 2023 14:10:59 +0100 Subject: [PATCH] Add comments about queries --- roomserver/storage/postgres/state_snapshot_table.go | 2 ++ syncapi/storage/postgres/output_room_events_table.go | 2 ++ 2 files changed, 4 insertions(+) diff --git a/roomserver/storage/postgres/state_snapshot_table.go b/roomserver/storage/postgres/state_snapshot_table.go index 0c5afec07..0e83cfc25 100644 --- a/roomserver/storage/postgres/state_snapshot_table.go +++ b/roomserver/storage/postgres/state_snapshot_table.go @@ -99,6 +99,8 @@ const bulkSelectStateForHistoryVisibilitySQL = ` AND (event_type_nid = 7 OR event_state_key LIKE '%:' || $2); ` +// bulkSelectMembershipForHistoryVisibilitySQL is an optimization to get membership events for a specific user for defined set of events. +// Returns the event_id of the event we want the membership event for, the event_id of the membership event and the membership event JSON. const bulkSelectMembershipForHistoryVisibilitySQL = ` SELECT re.event_id, re2.event_id, rej.event_json FROM roomserver_events re diff --git a/syncapi/storage/postgres/output_room_events_table.go b/syncapi/storage/postgres/output_room_events_table.go index 31b4753a1..635853631 100644 --- a/syncapi/storage/postgres/output_room_events_table.go +++ b/syncapi/storage/postgres/output_room_events_table.go @@ -107,6 +107,8 @@ const selectRecentEventsSQL = "" + " AND ( $7::text[] IS NULL OR NOT(type LIKE ANY($7)) )" + " ORDER BY id DESC LIMIT $8" +// selectRecentEventsForSyncSQL contains an optimization to get the recent events for a list of rooms, using a LATERAL JOIN +// The sub select inside LATERAL () is executed for all room_ids it gets as a parameter $1 const selectRecentEventsForSyncSQL = ` WITH room_ids AS ( SELECT unnest($1::text[]) AS room_id