3.5.0 Issues

I recently installed 3.5.0 into a fresh VMware virtual machine with 512MB allocated for RAM. The guest OS is Ubuntu 6.06 LTS and Openfire has been installed from the .deb package. The database is embedded and our configuration from 3.4.5 was brought in. Everything seemed to run fine for the past day or so, but right now Openfire does not allowing new connections – login attempts from Spark report “invalid username or password”. When I try to log into the admin console, I receive the following:

Exception:

java.util.MissingResourceException: Can’t find bundle for base name openfire_i18n, locale en

at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1508 )

at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1262)

at java.util.ResourceBundle.getBundle(ResourceBundle.java:789)

at org.jivesoftware.util.LocaleUtils.getLocalizedString(LocaleUtils.java:383)

at org.jivesoftware.util.LocaleUtils.getLocalizedString(LocaleUtils.java:415)

at org.jivesoftware.util.LocaleUtils.getLocalizedString(LocaleUtils.java:398)

at org.jivesoftware.admin.AdminConsole.getAdminText(AdminConsole.java:221)

at org.jivesoftware.admin.AdminConsole.getAppName(AdminConsole.java:122)

at org.jivesoftware.openfire.admin.login_jsp._jspService(login_jsp.java:163)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)

at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1093)

at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:39)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1084)

at org.jivesoftware.util.LocaleFilter.doFilter(LocaleFilter.java:65)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1084)

at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingF ilter.java:41)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1084)

at org.jivesoftware.admin.PluginFilter.doFilter(PluginFilter.java:69)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1084)

at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:98)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1084)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)

at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)

at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)

at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)

at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)

at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollect ion.java:206)

at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)

at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)

at org.mortbay.jetty.Server.handle(Server.java:324)

at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)

at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.j ava:828)

at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)

at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)

at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)

at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)

Any ideas?

Sorry to bump my own post, but here’s some more information from the error log:

2008.04.16 14:54:09 org.jivesoftware.openfire.nio.ConnectionHandler.exceptionCaught(ConnectionHandle r.java:109)

java.lang.OutOfMemoryError: Java heap space

This event was logged numerous times (400+ times) during yesterday’s outage.

Also, after I restarted Openfire and was able to log back into the admin console, I noticed that the Java memory usage was 99.x% (out of something like 63MB). Since we seem to be experiencing the same issue right now, I regret that I cannot log in and provide accurate details.

Is this indicative of a memory leak?

Should I (and how can I) allocate more memory to Openfire’s use of Java?

Hey Penguin,

64MB of RAM could not be enough for your server. It seems like running out of memory is the reason for the described problems. Try increasing the memory to 512MB and see how it goes. You can also add a the following parameter to the launch script -XX:+HeapDumpOnOutOfMemoryError so that the server can create a heap dump when it runs out of memory. That information can be analyzed to track down the source of the memory leak (if any).

Regards,

– Gato

Thanks for the reply.

I ended up modifying /etc/default/openfire to:

DAEMON_OPTS="-Xms256m -Xmx512m"

Now the admin console has been reporting Java Memory usage that fluctuates between 70 and 90MBs. FWIW, this was a clean install from the .deb package, which then had its embedded database, config and certificates ported in from a 3.4.5 tar.gz install. Could it be that the .deb installer is too lenient with its default JVM memory allocation?