Users/Groups not show(or stuck?) in admin console

The environment is:

OS: Ubuntu 12.04 LTS

Java: 1.6.0_32

Openfire: 3.8.1

Database: 5.5.24-0ubuntu0.12.04.1

I changed the user system to my own user table, following the official guide. It works well in most cases, but offen fails when click “Users/Groups” table on admin console. When I click the “Users/Groups” table, it stuck, seems like waiting for the response from the server, for a long time. But all other tabs and pages are all right now.

I checked the error log, there are lots of below errors but I don’t think it relates to this issue.

2013.03.07 09:59:21 org.jivesoftware.openfire.muc.HistoryRequest - Error parsing date from history management

java.text.ParseException: Unparseable date: “2013-03-06T09:18:39+0000”

Any body met this problem? It bothered me for a long time.

OF-646, please try a nightly build and see if it fixes the problem.

Thanks, but I don’t think it will lead to the “Users not show” problem.

I found another code issue in JDBCUserProvider.java, is it a typo?

public Collection getUsers(int startIndex, int numResults) {

Collection usernames = getUsernames(0, Integer.MAX_VALUE);

return new UserCollection(usernames.toArray(new String[usernames.size()]));

}

Why always load all the users?

Not sure if it’s related to users not showing up, but it definetly will cause the

org.jivesoftware.openfire.muc.HistoryRequest - Error parsing date from history management

java.text.ParseException: Unparseable date: “2013-03-06T09:18:39+0000”

exception in the logs.

The Users/Groups stuck issue not always show up. After each restart, it works well for a period, like an hour or half a day. Then when you visit the Users/Groups tab sometime, you find it stuck!

I looked into the error.log, the user-summary.jsp, and remote debugged the classes mentioned in the jsp, but didn’t find any worthy information. All the methods return success during the debug. It’s so weird.

By the way, there a lots of IllegalArgumentException in error.log, here is the one:

2013.03.09 11:05:08 org.jivesoftware.openfire.handler.IQHandler - Internal server error

java.lang.IllegalArgumentException: IQ must be of type ‘set’ or ‘get’. Original IQ:

at org.xmpp.packet.IQ.createResultIQ(IQ.java:384)

at org.jivesoftware.openfire.disco.IQDiscoInfoHandler.handleIQ(IQDiscoInfoHandler. java:109)

at org.jivesoftware.openfire.handler.IQHandler.process(IQHandler.java:65)

at org.jivesoftware.openfire.IQRouter.handle(IQRouter.java:374)

at org.jivesoftware.openfire.IQRouter.route(IQRouter.java:121)

at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:76)

at org.jivesoftware.openfire.net.StanzaHandler.processIQ(StanzaHandler.java:337)

at org.jivesoftware.openfire.net.ClientStanzaHandler.processIQ(ClientStanzaHandler .java:93)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:302)

at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:194)

at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandl er.java:181)

at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived (AbstractIoFilterChain.java:570)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:299)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:53)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:648)

at org.apache.mina.common.IoFilterAdapter.messageReceived(IoFilterAdapter.java:80)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:299)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:53)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:648)

at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimplePr otocolDecoderOutput.java:58)

at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecF ilter.java:185)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:299)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:53)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:648)

at org.apache.mina.common.IoFilterAdapter.messageReceived(IoFilterAdapter.java:80)

at org.jivesoftware.openfire.plugin.RawPrintFilter.messageReceived(RawPrintFilter. java:66)

at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(Ab stractIoFilterChain.java:299)

at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilt erChain.java:53)

at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceive d(AbstractIoFilterChain.java:648)

at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java :239)

at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(Execut orFilter.java:283)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java: 886)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)

at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)

at java.lang.Thread.run(Thread.java:662)

Is there anything wrong, or someone tells me what to do?