After recently upgrading to 3.8.0 and then 3.8.1, a problem where a client could not reconnect to the server appeared. When a client would attempt to reconnect to the server after losing connection for some reason (loss of network, sleep, hibernate, etc) the error in the Pidgin client would display something along the lines of “Server closed connection: Input/Output Error”
The server logs showed (and have been lost due to much troubleshooting and restarting) an Input/Output error failing to write in a cache. The exact cache I could not determine. Initially, a simple restart fixed the problem. Then I found that the roster cache was to blame by flushing the cache’s one by one in the admin interface. When the problem appeared, flushing only the roster cache would fix the problem and allow the client to login.
As a workaround, I set the system property of “cache.username2roster.size” to “0”. In two days since setting that, the problem has not reoccured.
My full setup is as follows:
Openfire 3.8.1 with Kraken 1.1.3beta3 connecting to AIM, Yahoo!, and Gtalk.
Running on Fedora 16, MySQL 5.5.29 community, OpenJDK (IcedTea6 1.11.6) (fedora-71.1.11.6.fc16-i386)
Hope this helps someone!