Timeout reached in sendAndAwait even if the response is already received
Issue #60
closed
When I try to discoverRooms of a chatService or enter one of the rooms. I get a "rocks.xmpp.core.session.NoResponseException" I've tried to extend the defaultResponseTimeoutto 10 seconds, but it didn't help.
Maybe my issue is related to an already closed one (#12).
I'm using Babbler 0.6.0.
OUT: <iq id="c00ece28-e6c9-4aa4-b042-1eb3d298c5eb" to="conference.jabber.org" type="get"><query xmlns="http://jabber.org/protocol/disco#items"></query></iq>
IN : <iq from="conference.jabber.org" id="c00ece28-e6c9-4aa4-b042-1eb3d298c5eb" to="user@domain.com/muc" type="result" xml:lang="en"><query xmlns="http://jabber.org/protocol/disco#items"><item jid="test\20room@conference.jabber.org" name="test room"></item><item jid="multi\20node\20room@conference.jabber.org" name="multi node room"></item><item jid="ewtesztrm328141946119461@conference.jabber.org" name="ewtesztrm328141946119461"></item><item jid="test@conference.jabber.org" name="test"></item></query></iq>
rocks.xmpp.core.session.NoResponseException: Timeout reached, while waiting on a response.
at rocks.xmpp.core.session.XmppSession.sendAndAwait(XmppSession.java:587)
at rocks.xmpp.core.session.XmppSession.query(XmppSession.java:515)
at rocks.xmpp.core.session.XmppSession.query(XmppSession.java:496)
at rocks.xmpp.extensions.disco.ServiceDiscoveryManager.discoverItems(ServiceDiscoveryManager.java:427)
at rocks.xmpp.extensions.disco.ServiceDiscoveryManager.discoverItems(ServiceDiscoveryManager.java:387)
at rocks.xmpp.extensions.muc.ChatService.discoverRooms(ChatService.java:76)
at test.jabber.Tester2.lambda$null$2(Tester2.java:78)
at rocks.xmpp.util.XmppUtils.lambda$notifyEventListeners$3(XmppUtils.java:177)
at java.util.concurrent.CopyOnWriteArrayList.forEach(CopyOnWriteArrayList.java:890)
at java.util.concurrent.CopyOnWriteArraySet.forEach(CopyOnWriteArraySet.java:404)
at rocks.xmpp.util.XmppUtils.notifyEventListeners(XmppUtils.java:175)
at rocks.xmpp.extensions.muc.MultiUserChatManager.lambda$new$3(MultiUserChatManager.java:80)
at rocks.xmpp.util.XmppUtils.lambda$notifyEventListeners$3(XmppUtils.java:177)
at java.util.concurrent.CopyOnWriteArrayList.forEach(CopyOnWriteArrayList.java:890)
at java.util.concurrent.CopyOnWriteArraySet.forEach(CopyOnWriteArraySet.java:404)
at rocks.xmpp.util.XmppUtils.notifyEventListeners(XmppUtils.java:175)
at rocks.xmpp.core.session.XmppSession.lambda$handleElement$9(XmppSession.java:805)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Comments (3)
-
repo owner -
repo owner Do you have any further information here?
-
repo owner - changed status to closed
No feedback since half a year and not reproducible for me. => Close
- Log in to comment
Hm, just tested it with the current master branch and it works as expected.
One known issue with 0.6 was, when you do this within a Message or Presence listener, the query is executed on the same thread and kind of blocks itself, because IQ results are delivered to the same thread, which is currently waiting on the result.
You could then do the query on another thread, or try using 0.6.1.