An atproto PDS written in Go

Fix delete account endpoint #5

merged opened by willdot.net targeting main from willdot.net/cocoon: fix-delete-account

The transaction function takes a sql string and then params. The nil I guess is a copy paste error from a normal sql.Exec function call.

Tested and works.

Labels

None yet.

Participants 2
AT URI
at://did:plc:dadhhalkfcq3gucaq25hjqon/sh.tangled.repo.pull/3mcl3l4gygl22
+10 -10
Diff #0
+10 -10
server/handle_server_delete_account.go
··· 76 76 } 77 77 78 78 status := "error" 79 - func() { 79 + defer func() { 80 80 if status == "error" { 81 81 if err := tx.Rollback().Error; err != nil { 82 82 logger.Error("error rolling back after delete failure", "err", err) ··· 84 84 } 85 85 }() 86 86 87 - if err := tx.Exec("DELETE FROM blocks WHERE did = ?", nil, req.Did).Error; err != nil { 87 + if err := tx.Exec("DELETE FROM blocks WHERE did = ?", req.Did).Error; err != nil { 88 88 logger.Error("error deleting blocks", "error", err) 89 89 return helpers.ServerError(e, nil) 90 90 } 91 91 92 - if err := tx.Exec("DELETE FROM records WHERE did = ?", nil, req.Did).Error; err != nil { 92 + if err := tx.Exec("DELETE FROM records WHERE did = ?", req.Did).Error; err != nil { 93 93 logger.Error("error deleting records", "error", err) 94 94 return helpers.ServerError(e, nil) 95 95 } 96 96 97 - if err := tx.Exec("DELETE FROM blobs WHERE did = ?", nil, req.Did).Error; err != nil { 97 + if err := tx.Exec("DELETE FROM blobs WHERE did = ?", req.Did).Error; err != nil { 98 98 logger.Error("error deleting blobs", "error", err) 99 99 return helpers.ServerError(e, nil) 100 100 } 101 101 102 - if err := tx.Exec("DELETE FROM tokens WHERE did = ?", nil, req.Did).Error; err != nil { 102 + if err := tx.Exec("DELETE FROM tokens WHERE did = ?", req.Did).Error; err != nil { 103 103 logger.Error("error deleting tokens", "error", err) 104 104 return helpers.ServerError(e, nil) 105 105 } 106 106 107 - if err := tx.Exec("DELETE FROM refresh_tokens WHERE did = ?", nil, req.Did).Error; err != nil { 107 + if err := tx.Exec("DELETE FROM refresh_tokens WHERE did = ?", req.Did).Error; err != nil { 108 108 logger.Error("error deleting refresh tokens", "error", err) 109 109 return helpers.ServerError(e, nil) 110 110 } 111 111 112 - if err := tx.Exec("DELETE FROM reserved_keys WHERE did = ?", nil, req.Did).Error; err != nil { 112 + if err := tx.Exec("DELETE FROM reserved_keys WHERE did = ?", req.Did).Error; err != nil { 113 113 logger.Error("error deleting reserved keys", "error", err) 114 114 return helpers.ServerError(e, nil) 115 115 } 116 116 117 - if err := tx.Exec("DELETE FROM invite_codes WHERE did = ?", nil, req.Did).Error; err != nil { 117 + if err := tx.Exec("DELETE FROM invite_codes WHERE did = ?", req.Did).Error; err != nil { 118 118 logger.Error("error deleting invite codes", "error", err) 119 119 return helpers.ServerError(e, nil) 120 120 } 121 121 122 - if err := tx.Exec("DELETE FROM actors WHERE did = ?", nil, req.Did).Error; err != nil { 122 + if err := tx.Exec("DELETE FROM actors WHERE did = ?", req.Did).Error; err != nil { 123 123 logger.Error("error deleting actor", "error", err) 124 124 return helpers.ServerError(e, nil) 125 125 } 126 126 127 - if err := tx.Exec("DELETE FROM repos WHERE did = ?", nil, req.Did).Error; err != nil { 127 + if err := tx.Exec("DELETE FROM repos WHERE did = ?", req.Did).Error; err != nil { 128 128 logger.Error("error deleting repo", "error", err) 129 129 return helpers.ServerError(e, nil) 130 130 }

History

1 round 2 comments
sign up or login to add to the discussion
willdot.net submitted #0
1 commit
expand
fix delete account endpoint
expand 2 comments

oh huh i think i never actually pushed my changes to my knot...keeping things in sync across here and github is hard lol

anyway, there's no more locking in the database wrapper here, and the code got simplified a lot. might be worth making sure that it didn't break again after i just pushed up the changes here

Seems to be working all ok without the locking ๐Ÿ™Œ

pull request successfully merged