*What steps will reproduce the problem?*
1. Configure Prosody to use an SQLite database in a read-only directory
2. Perform some change to roster/vCard/whatever
3. The change fails with the following <iq> stanza reported to the client, but no further information:
<error type='wait'>
<internal-server-error xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/>
</error>
*What is the expected output? What do you see instead?*
Expected: Prosody should at the very least log a warning (but probably an error) either when the database is first opened, or when a write is attempted.
Actual: Prosody silently fails.
*What version of the product are you using? On what operating system?*
Version 0.9.1 on Ubuntu 14.04
*Please provide any additional information below.*
Zash
on
Trying to reproduce on 0.9.1, I get this error:
Failed to load storage driver plugin sql on example.com: plugins/mod_storage_sql.lua:172: Failed to connect to database: unable to open database file
(followed by a traceback)
I would not call that a silent failure.
Further, on 0.10 with mod_storage_sql2, it successfully loads but I get this when attempting to authenticate:
example.com:storage_sql2 error Unable to read from database accounts store for username: Failed to connect to database: unable to open database file
After restoring permissions it continues working without needing to do anything else, which is an improvement.
Changes
tagStatus-CantReproduce
Zash
on
Hm, if the database file exists but the directory is read-only then this does actually happen.
*What steps will reproduce the problem?* 1. Configure Prosody to use an SQLite database in a read-only directory 2. Perform some change to roster/vCard/whatever 3. The change fails with the following <iq> stanza reported to the client, but no further information: <error type='wait'> <internal-server-error xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/> </error> *What is the expected output? What do you see instead?* Expected: Prosody should at the very least log a warning (but probably an error) either when the database is first opened, or when a write is attempted. Actual: Prosody silently fails. *What version of the product are you using? On what operating system?* Version 0.9.1 on Ubuntu 14.04 *Please provide any additional information below.*
Trying to reproduce on 0.9.1, I get this error: Failed to load storage driver plugin sql on example.com: plugins/mod_storage_sql.lua:172: Failed to connect to database: unable to open database file (followed by a traceback) I would not call that a silent failure. Further, on 0.10 with mod_storage_sql2, it successfully loads but I get this when attempting to authenticate: example.com:storage_sql2 error Unable to read from database accounts store for username: Failed to connect to database: unable to open database file After restoring permissions it continues working without needing to do anything else, which is an improvement.
ChangesHm, if the database file exists but the directory is read-only then this does actually happen.
ChangesSigh, Firefox bug with the select thing
ChangesFixed in http://hg.prosody.im/0.10/rev/a2dce746599b
Changes