[jitsi-dev] What's causing the delay in my 'hangup' event?


Hi all,

I'm trying to reproduce the torture-test failures that prevent some of my
PRs from being merged. I'm not having much luck reproducing those failures,
but I'm getting interesting other ones.

One of the tests that fail on my local setup
is org.jitsi.meet.test.EndConferenceTest. This test is pretty simple: it
establishes a conference, then presses the 'hangup' button and checks if
the URL changes (which signifies that the hangup succeeded).

The test waits for up to five seconds for the URL to change. On my setup,
this test fails. When I try to manually perform the same steps, I notice
that indeed it takes longer than 5 seconds to 'hangup'. In my environment,
it takes about 10 - 15 seconds.

I could obviously try to increase the timeout value, but I suspect that
something else might be wrong. I'd rather fix that.

What exactly needs to happen for a 'hangup' to be successful? I've
copy/pasted the console log that gets written just after I press the hangup
button. I've added a reference to places where things seem to slow down for
a few seconds.

Note that I'm running the videobridge and focus on Openfire, not Prosody.
Could it be that Openfire somehow behaves differently? What event is being
waited on?



Logger.js:125 [modules/UI/videolayout/RemoteVideo.js]
<r.removeRemoteStreamElement>: Audio removed 4esph96k ge.fn.init
Logger.js:125 [modules/UI/videolayout/RemoteVideo.js]
<r.removeRemoteStreamElement>: Video removed 4esph96k ge.fn.init
Logger.js:125 [modules/RTC/TraceablePeerConnection.js] <r.close>: Closing
Logger.js:125 [modules/xmpp/ChatRoom.js] <t.value>: do leave
Logger.js:125 [modules/xmpp/JingleSessionPC.js]
<r.peerconnection.oniceconnectionstatechange>: (TIME) ICE closed P2P?
false: 16802.700000000186
Logger.js:125 [modules/RTC/BridgeChannel.js] <RTCDataChannel.e.onclose>:
Channel closed

( a couple of seconds later )

Logger.js:125 [modules/UI/videolayout/VideoLayout.js]
<Object.removeParticipantContainer>: Removing remote video: 4esph96k
Logger.js:125 [modules/UI/videolayout/RemoteVideo.js] <r.remove>: Remove
thumbnail 4esph96k
Logger.js:125 [conference.js] <n.<anonymous>>: USER %s LEFT 4esph96k e
{_jid: "pinkhorsessteerruthlessly@conference.laptop-guus/4esph96k", _id:
"4esph96k", _conference: r, _displayName: undefined, _supportsDTMF: false,
Logger.js:125 [modules/xmpp/xmpp.js] <t.value>: (TIME) Strophe
disconnecting: 21784.800000023097
Logger.js:125 [modules/xmpp/xmpp.js] <t.value>: (TIME) Strophe
disconnected: 21785.800000012387
Logger.js:125 [modules/xmpp/strophe.ping.js] <a.value>: Ping interval

(again, a couple of seconds, then there's a redirect)