mirror of
https://github.com/gristlabs/grist-core.git
synced 2024-10-27 20:44:07 +00:00
ff77ecc6c6
Summary: During testing, and in some dev configurations, we make connections to the Grist home database from multiple processes, and store it in Sqlite. This is a situation prone to file locks in Sqlite. We set a busy_timeout parameter to help, but transactions may still fail immediately. This diff adds retries to our patch of TypeORM for Sqlite transactions (which without the patch are already flakey for other reasons https://github.com/typeorm/typeorm/issues/1884#issuecomment-380767213). Without this change, I can tickly SQLITE_BUSY problems fairly reliably with the DocApi tests. With this change, I can't so far. This change should not affect deployments of our SaaS (which use Postgres for home db) or grist-core/grist-ee (which access home db from a single process in default configuration). Test Plan: repeated running of DocApi tests Reviewers: dsagal Reviewed By: dsagal Subscribers: dsagal Differential Revision: https://phab.getgrist.com/D3466 |
||
---|---|---|
.. | ||
entity | ||
lib | ||
migration | ||
ApiServer.ts | ||
sqlUtils.ts |