From f5f84fadb7447c645075ae6e9e18dc344ceccede Mon Sep 17 00:00:00 2001 From: Neil Alexander Date: Fri, 4 Feb 2022 10:01:52 +0000 Subject: [PATCH] Remove unnecessary prepares --- .../storage/sqlite3/event_json_table.go | 11 +++++----- .../storage/sqlite3/event_state_keys_table.go | 11 +++++----- .../storage/sqlite3/membership_table.go | 10 +++++---- roomserver/storage/sqlite3/rooms_table.go | 22 ++++++++++--------- 4 files changed, 30 insertions(+), 24 deletions(-) diff --git a/roomserver/storage/sqlite3/event_json_table.go b/roomserver/storage/sqlite3/event_json_table.go index fae38905f..f470ea326 100644 --- a/roomserver/storage/sqlite3/event_json_table.go +++ b/roomserver/storage/sqlite3/event_json_table.go @@ -83,12 +83,13 @@ func (s *eventJSONStatements) BulkSelectEventJSON( iEventNIDs[k] = v } selectOrig := strings.Replace(bulkSelectEventJSONSQL, "($1)", sqlutil.QueryVariadic(len(iEventNIDs)), 1) - selectStmt, err := s.db.Prepare(selectOrig) - if err != nil { - return nil, err + var rows *sql.Rows + var err error + if txn != nil { + rows, err = txn.QueryContext(ctx, selectOrig, iEventNIDs...) + } else { + rows, err = s.db.QueryContext(ctx, selectOrig, iEventNIDs...) } - selectStmt = sqlutil.TxStmt(txn, selectStmt) - rows, err := selectStmt.QueryContext(ctx, iEventNIDs...) if err != nil { return nil, err } diff --git a/roomserver/storage/sqlite3/event_state_keys_table.go b/roomserver/storage/sqlite3/event_state_keys_table.go index 3b210fa22..bf12d5b83 100644 --- a/roomserver/storage/sqlite3/event_state_keys_table.go +++ b/roomserver/storage/sqlite3/event_state_keys_table.go @@ -119,12 +119,13 @@ func (s *eventStateKeyStatements) BulkSelectEventStateKeyNID( iEventStateKeys[k] = v } selectOrig := strings.Replace(bulkSelectEventStateKeySQL, "($1)", sqlutil.QueryVariadic(len(eventStateKeys)), 1) - selectPrep, err := s.db.Prepare(selectOrig) - if err != nil { - return nil, err + var rows *sql.Rows + var err error + if txn != nil { + rows, err = txn.QueryContext(ctx, selectOrig, iEventStateKeys...) + } else { + rows, err = s.db.QueryContext(ctx, selectOrig, iEventStateKeys...) } - stmt := sqlutil.TxStmt(txn, selectPrep) - rows, err := stmt.QueryContext(ctx, iEventStateKeys...) if err != nil { return nil, err } diff --git a/roomserver/storage/sqlite3/membership_table.go b/roomserver/storage/sqlite3/membership_table.go index 3d7f3ebe7..181b4b4c9 100644 --- a/roomserver/storage/sqlite3/membership_table.go +++ b/roomserver/storage/sqlite3/membership_table.go @@ -286,11 +286,13 @@ func (s *membershipStatements) SelectJoinedUsersSetForRooms(ctx context.Context, iRoomNIDs[i] = v } query := strings.Replace(selectJoinedUsersSetForRoomsSQL, "($1)", sqlutil.QueryVariadic(len(iRoomNIDs)), 1) - stmt, err := s.db.Prepare(query) - if err != nil { - return nil, err + var rows *sql.Rows + var err error + if txn != nil { + rows, err = txn.QueryContext(ctx, query, iRoomNIDs...) + } else { + rows, err = s.db.QueryContext(ctx, query, iRoomNIDs...) } - rows, err := sqlutil.TxStmt(txn, stmt).QueryContext(ctx, iRoomNIDs...) if err != nil { return nil, err } diff --git a/roomserver/storage/sqlite3/rooms_table.go b/roomserver/storage/sqlite3/rooms_table.go index ad34954a5..5413475e2 100644 --- a/roomserver/storage/sqlite3/rooms_table.go +++ b/roomserver/storage/sqlite3/rooms_table.go @@ -261,12 +261,13 @@ func (s *roomStatements) BulkSelectRoomIDs(ctx context.Context, txn *sql.Tx, roo iRoomNIDs[i] = v } sqlQuery := strings.Replace(bulkSelectRoomIDsSQL, "($1)", sqlutil.QueryVariadic(len(roomNIDs)), 1) - sqlPrep, err := s.db.Prepare(sqlQuery) - if err != nil { - return nil, err + var rows *sql.Rows + var err error + if txn != nil { + rows, err = txn.QueryContext(ctx, sqlQuery, iRoomNIDs...) + } else { + rows, err = s.db.QueryContext(ctx, sqlQuery, iRoomNIDs...) } - stmt := sqlutil.TxStmt(txn, sqlPrep) - rows, err := stmt.QueryContext(ctx, iRoomNIDs...) if err != nil { return nil, err } @@ -288,12 +289,13 @@ func (s *roomStatements) BulkSelectRoomNIDs(ctx context.Context, txn *sql.Tx, ro iRoomIDs[i] = v } sqlQuery := strings.Replace(bulkSelectRoomNIDsSQL, "($1)", sqlutil.QueryVariadic(len(roomIDs)), 1) - sqlPrep, err := s.db.Prepare(sqlQuery) - if err != nil { - return nil, err + var rows *sql.Rows + var err error + if txn != nil { + rows, err = txn.QueryContext(ctx, sqlQuery, iRoomIDs...) + } else { + rows, err = s.db.QueryContext(ctx, sqlQuery, iRoomIDs...) } - stmt := sqlutil.TxStmt(txn, sqlPrep) - rows, err := stmt.QueryContext(ctx, iRoomIDs...) if err != nil { return nil, err }