hyperstack-org / hyperstack-org/hyperstack
QueuedMessages from unsent/expired Connections are getting left in the database
- Lingua principale
- JavaScript
- Stelle
- 538
- Fork
- 41
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Lately I've noticed poor performance in our production database for the Hyperstack tables, and noticed we had about 400K QueuedMessages in the table. Upon looking in the code, I found this:
```ruby
# hyper-operation/lib/hyper-operation/transport/connection.rb:111
expired.delete_all
# hyper-operation/lib/hyper-operation/transport/connection.rb:173
inactive.delete_all
```
ActiveRecord `delete_all` does not run callbacks, so the dependent QueuedMessages are not being destroyed when the Connection is. This should be changed to `destroy_all` so that the QueuedMessages don't get left in the database and accumulate.
Guida per i contributori
Apri la guida per i contributori
Valutazione
Questa issue non è ancora stata valutata.