# HG changeset patch # User Waqas Hussain # Date 1293412235 -18000 # Node ID aa5e93e617606ce9e0120357bc9a1d1a87a5f66b # Parent af40a7ce4f777fd66410cfa9d0761b3745775991 mod_storage_sql: Call commit() after all SQL statements, including SELECT, to get SQLite to drop its locks. diff -r af40a7ce4f77 -r aa5e93e61760 plugins/mod_storage_sql.lua --- a/plugins/mod_storage_sql.lua Mon Dec 27 06:10:35 2010 +0500 +++ b/plugins/mod_storage_sql.lua Mon Dec 27 06:10:35 2010 +0500 @@ -55,9 +55,9 @@ if count == 0 then local stmt = assert(connection:prepare("CREATE TABLE `Prosody` (`host` TEXT, `user` TEXT, `store` TEXT, `key` TEXT, `subkey` TEXT, `type` TEXT, `value` TEXT);")); assert(stmt:execute()); - assert(connection:commit()); module:log("debug", "Initialized new SQLite3 database"); end + assert(connection:commit()); --print("===", json.stringify()) end end @@ -132,7 +132,7 @@ end end end - return haveany and result or nil; + return commit(haveany and result or nil); end function keyval_store:set(username, data) user,store = username,self.store; @@ -182,7 +182,7 @@ end end end - return haveany and result or nil; + return commit(haveany and result or nil); end function map_store:set(username, key, data) user,store = username,self.store;