aboutsummaryrefslogtreecommitdiff
path: root/roomserver/storage/sqlite3/room_aliases_table.go
diff options
context:
space:
mode:
authorNeil Alexander <neilalexander@users.noreply.github.com>2020-08-20 16:24:33 +0100
committerGitHub <noreply@github.com>2020-08-20 16:24:33 +0100
commit068a3d3c9f9be3473b68e3a13912182caf1c7117 (patch)
tree1a4731a46ea5f484c573b7245a078bae1f9c4b8e /roomserver/storage/sqlite3/room_aliases_table.go
parent0fea056db43c11c5de97fd96bcc60703ca1b4c08 (diff)
Roomserver per-room input parallelisation (Postgres) (#1289)
* Per-room input mutex * GetMembership should use transaction when assigning state key NID * Actually use writer transactions rather than ignoring them * Limit per-room mutexes to Postgres * Flip the check in InputRoomEvents
Diffstat (limited to 'roomserver/storage/sqlite3/room_aliases_table.go')
-rw-r--r--roomserver/storage/sqlite3/room_aliases_table.go11
1 files changed, 7 insertions, 4 deletions
diff --git a/roomserver/storage/sqlite3/room_aliases_table.go b/roomserver/storage/sqlite3/room_aliases_table.go
index a16e97aa..f053e398 100644
--- a/roomserver/storage/sqlite3/room_aliases_table.go
+++ b/roomserver/storage/sqlite3/room_aliases_table.go
@@ -20,6 +20,7 @@ import (
"database/sql"
"github.com/matrix-org/dendrite/internal"
+ "github.com/matrix-org/dendrite/internal/sqlutil"
"github.com/matrix-org/dendrite/roomserver/storage/shared"
"github.com/matrix-org/dendrite/roomserver/storage/tables"
)
@@ -81,9 +82,10 @@ func NewSqliteRoomAliasesTable(db *sql.DB) (tables.RoomAliases, error) {
}
func (s *roomAliasesStatements) InsertRoomAlias(
- ctx context.Context, alias string, roomID string, creatorUserID string,
+ ctx context.Context, txn *sql.Tx, alias string, roomID string, creatorUserID string,
) error {
- _, err := s.insertRoomAliasStmt.ExecContext(ctx, alias, roomID, creatorUserID)
+ stmt := sqlutil.TxStmt(txn, s.insertRoomAliasStmt)
+ _, err := stmt.ExecContext(ctx, alias, roomID, creatorUserID)
return err
}
@@ -131,8 +133,9 @@ func (s *roomAliasesStatements) SelectCreatorIDFromAlias(
}
func (s *roomAliasesStatements) DeleteRoomAlias(
- ctx context.Context, alias string,
+ ctx context.Context, txn *sql.Tx, alias string,
) error {
- _, err := s.deleteRoomAliasStmt.ExecContext(ctx, alias)
+ stmt := sqlutil.TxStmt(txn, s.deleteRoomAliasStmt)
+ _, err := stmt.ExecContext(ctx, alias)
return err
}