Fix upgrade

This commit is contained in:
Till Faelligen 2022-04-28 14:25:51 +02:00
parent 5e8fb2ca53
commit 778b981879
5 changed files with 20 additions and 13 deletions

View file

@ -86,21 +86,20 @@ func NewPostgresQueueEDUsTable(db *sql.DB) (s *queueEDUsStatements, err error) {
db: db,
}
_, err = s.db.Exec(queueEDUsSchema)
if err != nil {
return
}
if s.deleteQueueEDUStmt, err = s.db.Prepare(deleteQueueEDUSQL); err != nil {
return
}
return s, sqlutil.StatementList{
return s, err
}
func (s *queueEDUsStatements) Prepare() error {
return sqlutil.StatementList{
{&s.insertQueueEDUStmt, insertQueueEDUSQL},
{&s.deleteQueueEDUStmt, deleteQueueEDUSQL},
{&s.selectQueueEDUStmt, selectQueueEDUSQL},
{&s.selectQueueEDUReferenceJSONCountStmt, selectQueueEDUReferenceJSONCountSQL},
{&s.selectQueueEDUCountStmt, selectQueueEDUCountSQL},
{&s.selectQueueEDUServerNamesStmt, selectQueueServerNamesSQL},
{&s.selectExpiredEDUsStmt, selectExpiredEDUsSQL},
{&s.deleteExpiredEDUsStmt, deleteExpiredEDUsSQL},
}.Prepare(db)
}.Prepare(s.db)
}
func (s *queueEDUsStatements) InsertQueueEDU(

View file

@ -88,6 +88,9 @@ func NewDatabase(dbProperties *config.DatabaseOptions, cache caching.FederationC
if err = m.RunDeltas(d.db, dbProperties); err != nil {
return nil, err
}
if err = queueEDUs.Prepare(); err != nil {
return nil, err
}
d.Database = shared.Database{
DB: d.db,
ServerName: serverName,

View file

@ -87,10 +87,11 @@ func NewSQLiteQueueEDUsTable(db *sql.DB) (s *queueEDUsStatements, err error) {
db: db,
}
_, err = db.Exec(queueEDUsSchema)
if err != nil {
return
}
return s, sqlutil.StatementList{
return s, err
}
func (s *queueEDUsStatements) Prepare() error {
return sqlutil.StatementList{
{&s.insertQueueEDUStmt, insertQueueEDUSQL},
{&s.selectQueueEDUStmt, selectQueueEDUSQL},
{&s.selectQueueEDUReferenceJSONCountStmt, selectQueueEDUReferenceJSONCountSQL},
@ -98,7 +99,7 @@ func NewSQLiteQueueEDUsTable(db *sql.DB) (s *queueEDUsStatements, err error) {
{&s.selectQueueEDUServerNamesStmt, selectQueueServerNamesSQL},
{&s.selectExpiredEDUsStmt, selectExpiredEDUsSQL},
{&s.deleteExpiredEDUsStmt, deleteExpiredEDUsSQL},
}.Prepare(db)
}.Prepare(s.db)
}
func (s *queueEDUsStatements) InsertQueueEDU(

View file

@ -87,6 +87,9 @@ func NewDatabase(dbProperties *config.DatabaseOptions, cache caching.FederationC
if err = m.RunDeltas(d.db, dbProperties); err != nil {
return nil, err
}
if err = queueEDUs.Prepare(); err != nil {
return nil, err
}
d.Database = shared.Database{
DB: d.db,
ServerName: serverName,

View file

@ -42,6 +42,7 @@ type FederationQueueEDUs interface {
SelectQueueEDUServerNames(ctx context.Context, txn *sql.Tx) ([]gomatrixserverlib.ServerName, error)
SelectExpiredEDUs(ctx context.Context, txn *sql.Tx, expiredBefore gomatrixserverlib.Timestamp) ([]int64, error)
DeleteExpiredEDUs(ctx context.Context, txn *sql.Tx, expiredBefore gomatrixserverlib.Timestamp) error
Prepare() error
}
type FederationQueueJSON interface {