mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-12-18 05:53:00 -06:00
[bugfix] wrap bun.Tx to add our own error processing (#2169)
* wrap bun.Tx to add our own error processing Signed-off-by: kim <grufwub@gmail.com> * add compile-time check for updateRowError() compatibility with sql.Row, fix wrapTx() not being used properly Signed-off-by: kim <grufwub@gmail.com> --------- Signed-off-by: kim <grufwub@gmail.com>
This commit is contained in:
parent
2ec313a21f
commit
1ee99fc165
7 changed files with 271 additions and 47 deletions
|
|
@ -276,7 +276,7 @@ func (s *statusDB) PutStatus(ctx context.Context, status *gtsmodel.Status) error
|
|||
// It is safe to run this database transaction within cache.Store
|
||||
// as the cache does not attempt a mutex lock until AFTER hook.
|
||||
//
|
||||
return s.db.RunInTx(ctx, func(tx bun.Tx) error {
|
||||
return s.db.RunInTx(ctx, func(tx Tx) error {
|
||||
// create links between this status and any emojis it uses
|
||||
for _, i := range status.EmojiIDs {
|
||||
if _, err := tx.
|
||||
|
|
@ -342,7 +342,7 @@ func (s *statusDB) UpdateStatus(ctx context.Context, status *gtsmodel.Status, co
|
|||
// It is safe to run this database transaction within cache.Store
|
||||
// as the cache does not attempt a mutex lock until AFTER hook.
|
||||
//
|
||||
return s.db.RunInTx(ctx, func(tx bun.Tx) error {
|
||||
return s.db.RunInTx(ctx, func(tx Tx) error {
|
||||
// create links between this status and any emojis it uses
|
||||
for _, i := range status.EmojiIDs {
|
||||
if _, err := tx.
|
||||
|
|
@ -420,7 +420,7 @@ func (s *statusDB) DeleteStatusByID(ctx context.Context, id string) error {
|
|||
// On return ensure status invalidated from cache.
|
||||
defer s.state.Caches.GTS.Status().Invalidate("ID", id)
|
||||
|
||||
return s.db.RunInTx(ctx, func(tx bun.Tx) error {
|
||||
return s.db.RunInTx(ctx, func(tx Tx) error {
|
||||
// delete links between this status and any emojis it uses
|
||||
if _, err := tx.
|
||||
NewDelete().
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue