When a smacks hibernating session times out, several storage interaction may happen, starting with recording the 'h' value and possibly including anything that happens during regular stanza routing when the stanza queue is bounced.
info Client disconnected: unexpected eof while reading
debug Session going into hibernation (not being destroyed)
debug Resource unbind prevented by module
debug mod_smacks hibernation timeout reached...
debug Destroying session for hibernating too long
warn ASYNC-01: Attempt to access storage outside async context, see https://prosody.im/doc/developers/async - stack traceback:
./core/storagemanager.lua:53: in function <./core/storagemanager.lua:50>
(...tail calls...)
plugins/mod_smacks.lua:545: in function <plugins/mod_smacks.lua:528>
(...tail calls...)
[C]: in function 'xpcall'
./net/server_epoll.lua:188: in upvalue 'runtimers'
./net/server_epoll.lua:1179: in function 'prosody.net.server_epoll.loop'
[C]: in function 'xpcall'
./prosody:88: in local 'loop'
./prosody:93: in main chunk
[C]: in ?
Reported by piuvas in the chat against 0.12.4, reproduced on trunk 67288253d9a2
Problems start at
https://hg.prosody.im/trunk/file/67288253d9a2/plugins/mod_smacks.lua#l545
Similar to #1109 in that it occurs in a timer.
When a smacks hibernating session times out, several storage interaction may happen, starting with recording the 'h' value and possibly including anything that happens during regular stanza routing when the stanza queue is bounced. info Client disconnected: unexpected eof while reading debug Session going into hibernation (not being destroyed) debug Resource unbind prevented by module debug mod_smacks hibernation timeout reached... debug Destroying session for hibernating too long warn ASYNC-01: Attempt to access storage outside async context, see https://prosody.im/doc/developers/async - stack traceback: ./core/storagemanager.lua:53: in function <./core/storagemanager.lua:50> (...tail calls...) plugins/mod_smacks.lua:545: in function <plugins/mod_smacks.lua:528> (...tail calls...) [C]: in function 'xpcall' ./net/server_epoll.lua:188: in upvalue 'runtimers' ./net/server_epoll.lua:1179: in function 'prosody.net.server_epoll.loop' [C]: in function 'xpcall' ./prosody:88: in local 'loop' ./prosody:93: in main chunk [C]: in ? Reported by piuvas in the chat against 0.12.4, reproduced on trunk 67288253d9a2 Problems start at https://hg.prosody.im/trunk/file/67288253d9a2/plugins/mod_smacks.lua#l545 Similar to #1109 in that it occurs in a timer.
Fixed in https://hg.prosody.im/trunk/rev/01d2abc3d17c
Changes