From e3ac0e661676a4c56b5f18644ded7874da263462 Mon Sep 17 00:00:00 2001 From: Matthew Hodgson Date: Wed, 9 Sep 2020 17:03:31 +0100 Subject: [PATCH] fix lots of places where we didn't rollback txns upon go errs --- federationsender/storage/shared/storage.go | 2 +- keyserver/storage/shared/storage.go | 2 +- roomserver/storage/shared/storage.go | 4 ++-- syncapi/storage/shared/syncserver.go | 8 ++++---- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/federationsender/storage/shared/storage.go b/federationsender/storage/shared/storage.go index 4e34725902..4c80c07920 100644 --- a/federationsender/storage/shared/storage.go +++ b/federationsender/storage/shared/storage.go @@ -138,7 +138,7 @@ func (d *Database) StoreJSON( var err error _ = d.Writer.Do(d.DB, nil, func(txn *sql.Tx) error { nid, err = d.FederationSenderQueueJSON.InsertQueueJSON(ctx, txn, js) - return nil + return err }) if err != nil { return nil, fmt.Errorf("d.insertQueueJSON: %w", err) diff --git a/keyserver/storage/shared/storage.go b/keyserver/storage/shared/storage.go index d4915afc14..de757f294d 100644 --- a/keyserver/storage/shared/storage.go +++ b/keyserver/storage/shared/storage.go @@ -41,7 +41,7 @@ func (d *Database) ExistingOneTimeKeys(ctx context.Context, userID, deviceID str func (d *Database) StoreOneTimeKeys(ctx context.Context, keys api.OneTimeKeys) (counts *api.OneTimeKeysCount, err error) { _ = d.Writer.Do(d.DB, nil, func(txn *sql.Tx) error { counts, err = d.OneTimeKeysTable.InsertOneTimeKeys(ctx, txn, keys) - return nil + return err }) return } diff --git a/roomserver/storage/shared/storage.go b/roomserver/storage/shared/storage.go index 5c18c7250c..262b0f2f8d 100644 --- a/roomserver/storage/shared/storage.go +++ b/roomserver/storage/shared/storage.go @@ -359,7 +359,7 @@ func (d *Database) MembershipUpdater( var updater *MembershipUpdater _ = d.Writer.Do(d.DB, txn, func(txn *sql.Tx) error { updater, err = NewMembershipUpdater(ctx, d, txn, roomID, targetUserID, targetLocal, roomVersion) - return nil + return err }) return updater, err } @@ -374,7 +374,7 @@ func (d *Database) GetLatestEventsForUpdate( var updater *LatestEventsUpdater _ = d.Writer.Do(d.DB, txn, func(txn *sql.Tx) error { updater, err = NewLatestEventsUpdater(ctx, d, txn, roomInfo) - return nil + return err }) return updater, err } diff --git a/syncapi/storage/shared/syncserver.go b/syncapi/storage/shared/syncserver.go index 5395b9c5d6..b53b8fc71e 100644 --- a/syncapi/storage/shared/syncserver.go +++ b/syncapi/storage/shared/syncserver.go @@ -146,7 +146,7 @@ func (d *Database) AddInviteEvent( ) (sp types.StreamPosition, err error) { _ = d.Writer.Do(d.DB, nil, func(txn *sql.Tx) error { sp, err = d.Invites.InsertInviteEvent(ctx, txn, inviteEvent) - return nil + return err }) return } @@ -158,7 +158,7 @@ func (d *Database) RetireInviteEvent( ) (sp types.StreamPosition, err error) { _ = d.Writer.Do(d.DB, nil, func(txn *sql.Tx) error { sp, err = d.Invites.DeleteInviteEvent(ctx, txn, inviteEventID) - return nil + return err }) return } @@ -171,7 +171,7 @@ func (d *Database) AddPeek( ) (sp types.StreamPosition, err error) { _ = d.Writer.Do(nil, nil, func(_ *sql.Tx) error { sp, err = d.Peeks.InsertPeek(ctx, nil, roomID, userID, deviceID) - return nil + return err }) return } @@ -184,7 +184,7 @@ func (d *Database) DeletePeeks( ) (sp types.StreamPosition, err error) { _ = d.Writer.Do(nil, nil, func(_ *sql.Tx) error { sp, err = d.Peeks.DeletePeeks(ctx, nil, roomID, userID) - return nil + return err }) if err == sql.ErrNoRows { err = nil