aboutsummaryrefslogtreecommitdiff
path: root/mediaapi/storage/sqlite3/storage.go
diff options
context:
space:
mode:
authorNeil Alexander <neilalexander@users.noreply.github.com>2020-08-21 10:42:08 +0100
committerGitHub <noreply@github.com>2020-08-21 10:42:08 +0100
commit9d53351dc20283103bf2eec6b92831033d06c5a8 (patch)
tree653cf0ddca3f777bcdba188187fb78fe39ae2b02 /mediaapi/storage/sqlite3/storage.go
parent5aaf32bbed4d704d5a22ad7dff79f7a68002a213 (diff)
Component-wide TransactionWriters (#1290)
* Offset updates take place using TransactionWriter * Refactor TransactionWriter in current state server * Refactor TransactionWriter in federation sender * Refactor TransactionWriter in key server * Refactor TransactionWriter in media API * Refactor TransactionWriter in server key API * Refactor TransactionWriter in sync API * Refactor TransactionWriter in user API * Fix deadlocking Sync API tests * Un-deadlock device database * Fix appservice API * Rename TransactionWriters to Writers * Move writers up a layer in sync API * Document sqlutil.Writer interface * Add note to Writer documentation
Diffstat (limited to 'mediaapi/storage/sqlite3/storage.go')
-rw-r--r--mediaapi/storage/sqlite3/storage.go7
1 files changed, 5 insertions, 2 deletions
diff --git a/mediaapi/storage/sqlite3/storage.go b/mediaapi/storage/sqlite3/storage.go
index a1e7fec7..d5c3031e 100644
--- a/mediaapi/storage/sqlite3/storage.go
+++ b/mediaapi/storage/sqlite3/storage.go
@@ -31,16 +31,19 @@ import (
type Database struct {
statements statements
db *sql.DB
+ writer sqlutil.Writer
}
// Open opens a postgres database.
func Open(dbProperties *config.DatabaseOptions) (*Database, error) {
- var d Database
+ d := Database{
+ writer: sqlutil.NewExclusiveWriter(),
+ }
var err error
if d.db, err = sqlutil.Open(dbProperties); err != nil {
return nil, err
}
- if err = d.statements.prepare(d.db); err != nil {
+ if err = d.statements.prepare(d.db, d.writer); err != nil {
return nil, err
}
return &d, nil