Closed
Description
Feature or enhancement
Has this already been discussed elsewhere?
This is a minor feature, which does not need previous discussion elsewhere
Links to previous discussion of this feature:
No response
Proposal:
On my MacBook Pro M1, the sqlite3 test suite takes between 1.7 and up to 3 seconds to run. This is caused by the following inefficiencies:
- the sqlite3 CLI tests are run by launching Python in a new process
- tests relying on locking are using relatively large busy handler timeouts
With the following improvements, I can run the sqlite3 test suite in 350 milliseconds:
- refactor the CLI so we can invoke it and mock command-line arguments simply by importing the main() and passing a list of strings to it
- disable the busy handler for all concurrency tests; we have full control over the order of the SQLite C API calls, so we can safely do this
Linked PRs
- gh-108550: Speed up sqlite3 tests #108551
- [3.12] gh-108550: Speed up sqlite3 tests (GH-108551) #108566
- [3.11] gh-108550: Speed up sqlite3 tests (#108551) #108567
- gh-108550: Fix sqlite3 CLI regression from gh-108551 #108618
- [3.12] gh-108550: Fix sqlite3 CLI regression from gh-108551 (GH-108618) #108621
Metadata
Metadata
Assignees
Labels
Projects
Status
Done