diff options
author | Neil Alexander <neilalexander@users.noreply.github.com> | 2020-12-11 14:02:17 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-11 14:02:17 +0000 |
commit | ebcacd1bb56d6e37ff743c0430bc91e24d440199 (patch) | |
tree | d9cd72accebe4004e8eb067026ab0158ccff0a1a /syncapi/storage/sqlite3/syncserver.go | |
parent | c55361c1b88b272c9a06e7dbc61f60e3effbd063 (diff) |
Give receipts their own stream ID in the database (#1631)
* Give read recipts their own database sequence
* Give receipts their own stream ID
* Change migration names
* Reset sequences
* Add max receipt queries, missing stream_id table entry for SQLite
Diffstat (limited to 'syncapi/storage/sqlite3/syncserver.go')
-rw-r--r-- | syncapi/storage/sqlite3/syncserver.go | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/syncapi/storage/sqlite3/syncserver.go b/syncapi/storage/sqlite3/syncserver.go index 7df71b38..1ad0e947 100644 --- a/syncapi/storage/sqlite3/syncserver.go +++ b/syncapi/storage/sqlite3/syncserver.go @@ -25,6 +25,7 @@ import ( "github.com/matrix-org/dendrite/internal/sqlutil" "github.com/matrix-org/dendrite/setup/config" "github.com/matrix-org/dendrite/syncapi/storage/shared" + "github.com/matrix-org/dendrite/syncapi/storage/sqlite3/deltas" ) // SyncServerDatasource represents a sync server datasource which manages @@ -46,13 +47,14 @@ func NewDatabase(dbProperties *config.DatabaseOptions) (*SyncServerDatasource, e return nil, err } d.writer = sqlutil.NewExclusiveWriter() - if err = d.prepare(); err != nil { + if err = d.prepare(dbProperties); err != nil { return nil, err } return &d, nil } -func (d *SyncServerDatasource) prepare() (err error) { +// nolint:gocyclo +func (d *SyncServerDatasource) prepare(dbProperties *config.DatabaseOptions) (err error) { if err = d.PartitionOffsetStatements.Prepare(d.db, d.writer, "syncapi"); err != nil { return err } @@ -99,6 +101,11 @@ func (d *SyncServerDatasource) prepare() (err error) { if err != nil { return err } + m := sqlutil.NewMigrations() + deltas.LoadFixSequences(m) + if err = m.RunDeltas(d.db, dbProperties); err != nil { + return err + } d.Database = shared.Database{ DB: d.db, Writer: d.writer, |