Increase sql busy timeout and add commit statements to prevent DB locking #114
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
It seems like this database locking is associated with multiple open transactions that are all trying to write or read from the database at the same time. The busy timeout has been increased to 120 seconds by changing line 19 in sqlite.py. The busy timeout allows incoming SQL transactions to sleep while another transaction is interfacing with ### the database, the maximum amount of time that the transaction can sleep is set in seconds by the integer value above Busy Timeout.
A connection.commit() command also has been added after the
DELETE FROM
statements. Committing theDELETE FROM
statements to the database should allow the database to unlock and be ready for another transaction commit .The request.txt, available in issue #113 , has been run through an instance of modified ROVER with no locking database exceptions.