Making a ticket here to consolidate a few existing database-related tickets that have been stagnating for a while.
- Optimizing the
groupobjectpermissiontable: #190 (closed)
- MyISAM--> InnoDB: #51. I need to add my notes about testing this before and the deadlocking issues I had before. I'm curious if the permissions table changes would make a difference for this one.
- Retry transactions automatically on failure? I did not have good luck with this suggestion before, but maybe it can be generalized as a global retry hook? In the CI environment, GWCelery ran into a race condition when different tests were trying to
.save()the same superevent at the same time (emfollow/gracedb-sdk@6e6b6beb...ae83cdeb). The pipelines failed with an IntegrityError, but I wonder if a global retry feature would improve stability
- MariaDB--> PostgresQL (#52). Definitely a post-O3b thing.
I'll update this ticket as I come across more issues.