I am running into an issue where my Openfire server starts filling logs with XmlPullParserExceptions when under heavy load.
The log messages look like:
2015.04.10 11:05:23 org.jivesoftware.openfire.nio.ConnectionHandler - Closing connection due to error while processing message: <iq id="MX_30905" to="test-208.52.158.239@xmpp.openfire.svadmin.com/3.10.3150.35702" from="dispatcher@xmpp.openfire.svadmin.com/10.88.144.23-30152" type="get"><XmppRequest xmlns="Core.Xmpp.TestRequest"><client>test</client><createdAt>4/10/2015 3:06:17 PM</createdAt><guid>24a849bc-e0a8-4a36-97c3-c58061f69cd9</guid><images>Blocked< /images><messageReceipt /><orientation>Vertical</orientation></XmppRequest></iq>
org.xmlpull.v1.XmlPullParserException: position 0 exceeded number of available namespaces 0
at org.xmlpull.mxp1.MXParser.getNamespacePrefix(MXParser.java:605)
at org.dom4j.io.XMPPPacketReader.parseDocument(XMPPPacketReader.java:386)
at org.dom4j.io.XMPPPacketReader.read(XMPPPacketReader.java:153)
at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:153)
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.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.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
at java.lang.Thread.run(Thread.java:745)
These messages only appear in a small percentage our traffic and only during times of heavy load.
Thank you