Handling of locked databases
Since moving from mysql to sqlite3 I have been occasionally getting the following errors when running sync-cli.sh via cron:
ERROR: [5] database is locked (SQL Query: INSERT INTO "contacts_google" ("user_id", "changed", "del", "vcard", "name", "firstname", "surname", "email", "words") VALUES (14, datetime('now'), 0, 'BEGIN:VCARD [...]
I am led to believe that sqlite doesn't support multiple concurrent access with it being file based and so presumably that's what the issue is (and, specifically, that Roundcube happens to have the database locked at the time)?
I could pipe all errors to /dev/null but I'd like to know about others ('genuine' ones, if you see what I mean) that might occur. Is there any way the sync-cli.sh script could detect a locked database and handle the situation differently - perhaps retrying or backing off momentarily, if that's what required?