[BUG] Intermittent SQLIte3 connection errors prevent syncing until app is restarted
See original GitHub issueSummary
The Augur app sometimes gets stuck on SQLite3 connection errors, which persist and block any syncing progress until the app is restarted. Everything seems to work fine after the restart.
Steps to reproduce
Not sure, it seems to happen more or less randomly. I have seen it occur after the app has been up and syncing normally for a while, as well as shortly after starting and before fully syncing in the first place.
It’s happened for me twice in the last few days with “Local Light Node (experimental).” I think I’ve also seen it in the past using Alchemy and even gethnode (back when that worked), but can’t prove it yet.
Expected behavior
No errors, or at least no need to restart the app manually.
Screenshots
Terminal output from augur-app:
[14:39:11.431] [info] AugurNodeServer requestLatestSyncedBlock
[14:39:15.839] [info] {"id":1760,"jsonrpc":"2.0","method":"getSyncData","params":null}
[14:39:15.839] [info] {"id":1761,"jsonrpc":"2.0","method":"getSyncData","params":null}
[14:39:15.841] [error] getter error: Error: Unable to acquire a connection
at Client_SQLite3.acquireConnection (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/client.js:318:40)
at Runner.ensureConnection (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/runner.js:227:24)
at Runner.run (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/runner.js:47:42)
at Builder.Target.then (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/interface.js:35:43)
at process._tickCallback (internal/process/next_tick.js:188:7)
[14:39:15.841] [error] getter error: Error: Unable to acquire a connection
at Client_SQLite3.acquireConnection (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/client.js:318:40)
at Runner.ensureConnection (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/runner.js:227:24)
at Runner.run (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/runner.js:47:42)
at Builder.Target.then (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/interface.js:35:43)
at process._tickCallback (internal/process/next_tick.js:188:7)
[14:39:16.279] [info] {"id":1762,"jsonrpc":"2.0","method":"getMarketPriceCandlesticks","params":{"marketId":"0x8c8215d01e9e735e2522e44cd4e8e8fec06a0437","period":86400,"start":1546041600,"end":1546724322,"outcome":"1"}}
[14:39:16.279] [error] getter error: Error: Unable to acquire a connection
at Client_SQLite3.acquireConnection (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/client.js:318:40)
at Runner.ensureConnection (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/runner.js:227:24)
at Runner.run (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/runner.js:47:42)
at Builder.Target.then (/usr/local/src/upstream/augur-app/dist/linux-unpacked/resources/app.asar/node_modules/augur-node/node_modules/knex/lib/interface.js:35:43)
at process._tickCallback (internal/process/next_tick.js:188:7)
Environment
- Operating system: Ubuntu 16.04.5
- Browser: Firefox 64
If using Augur App:
- Augur App version: 1.8.6
- Are you connecting with a pre-existing option from the dropdown list of networks? Yes
- If so, which one? “Local Light Node (experimental)”
Additional context
Add any other context about the problem here.
Issue Analytics
- State:
- Created 5 years ago
- Comments:11 (7 by maintainers)
Top Results From Across the Web
How can I avoid concurrency problems when using SQLite on ...
I suppose that database queries can be "heavy" and should not use the UI thread as it can lock up the app -...
Read more >"disk is full" error only once per connection? - SQLite Forum
Using sqlite 3.29.0, the following behaviour occurs: If the disk is completey full, there is an error on the query immediately, but if...
Read more >SQLite error handling problem when using prepared queries.
When certain errors occur while executing an SQLite prepared query, no condition is signalled until the next time the statement is used.
Read more >Bug listing with status RESOLVED with resolution TEST ...
Bug :233 - "Emacs segfaults when merged through the sandbox. ... without error after failed restart" status:RESOLVED resolution:TEST-REQUEST severity:normal ...
Read more >Pleasant Password Server - X. Common Issues
KeePass Export Operation is Not Allowed by the Application Policy KeePass for Password Server errors PassManClient Connection Error
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
@ndorf I don’t believe there were any recent changes that would have fixed it, so we’ll investigate it more. If you do see it in 1.9.1 or 1.9.2, please let us know just to confirm.
This might have been fixed by the recent changes made to Augur Node, but it will need more investigation by one of the devs to confirm.