Attempt to fix CI problems by atdrendel · Pull Request #54 · shareup/sqlite · GitHub
Skip to content

Attempt to fix CI problems#54

Merged
atdrendel merged 1 commit into
mainfrom
fix-ci-issues
Feb 5, 2024
Merged

Attempt to fix CI problems#54
atdrendel merged 1 commit into
mainfrom
fix-ci-issues

Conversation

@atdrendel

Copy link
Copy Markdown
Contributor

In an iOS app that consumes SQLite, migration tests have occasionally been failing with errors similiar to the following:

BUG IN CLIENT OF libsqlite3.dylib: database integrity compromised by API violation: vnode unlinked while in use
invalidated open fd

The errors mentioned the WAL or SHM files were being deleted before the database had been closed. The errors do not seem to be related to the content of the tests themselves. Instead, it seems like the migration tests have periodically started failing instead of the other database tests is the migration tests create databases on disk, whereas the other tests use in-memory databases. The databases are being created in a temporary directory and are not being manually deleted by the tests.

The tests started failing after moving to defaulting to IMMEDIATE transactions based on the GRDB documentation.

This pull request attempts to fix the flaky test failures by ensuring all reads and writes finish before truncation happens and the database is closed.

@atdrendel atdrendel merged commit 044cf23 into main Feb 5, 2024
@atdrendel atdrendel deleted the fix-ci-issues branch February 5, 2024 11:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant