Jonathan Rainville 5a8310d5a7
fix(pins)_: delete pins when the og message is deleted (#6173)
Found when fixing https://github.com/status-im/status-desktop/issues/16639

When a message is deleted, we need to delete the pins too as they are no longer available. This was done using an ON DELETE clause (thanks @osmaczko)
I also made sure the SELECT query for the pins doesn't return deleted messages
2024-12-12 13:18:40 -05:00
..
2020-01-10 19:59:01 +01:00
2021-01-08 08:43:16 +01:00

How to write migrations?

We only write up migrations, down migrations are not always possible in sqlite or too complex/too expensive. For example to remove a column you would have to duplicate the table, copy over the data, delete and recreated. This can be very expensive for some tables (user_messages for example), so should not be attempted.

Notes

One issue we faced multiple times is that updates to user_messages can be very expensive, leading to slow upgrade times and interrupted migrations. So avoid writes if not necessary.