Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Possible thread leak when transcription is enabled #510

Open
arnaldopereira opened this issue Nov 8, 2023 · 1 comment
Open

Possible thread leak when transcription is enabled #510

arnaldopereira opened this issue Nov 8, 2023 · 1 comment

Comments

@arnaldopereira
Copy link

arnaldopereira commented Nov 8, 2023

Description


With transcription and Vosk enabled, I'm noticing an odd behavior: the number of jigasi threads only increase after transcription sessions.

Current behavior


The feature works as expected: TR shows, subtitles works.
Although, the number of threads increases with new sessions and never decreases.

Expected Behavior


Number of threads should decrease after a transcription session ends.

Possible Solution


Steps to reproduce


Enter a conference meeting as moderator, click 'start subtitles' and end the meeting.

Environment details


OS: Debian buster-slim docker image
Jigasi: jigasi_1.1-313-gb21f752-1

Transcription config:

org.jitsi.jigasi.ENABLE_TRANSCRIPTION=true
org.jitsi.jigasi.transcription.ENABLE_TRANSLATION=true

org.jitsi.jigasi.transcription.DIRECTORY=/tmp/transcripts
org.jitsi.jigasi.transcription.BASE_URL=https://foo.bar/transcripts
org.jitsi.jigasi.transcription.jetty.port=-1
org.jitsi.jigasi.transcription.ADVERTISE_URL=false

org.jitsi.jigasi.transcription.SAVE_JSON=false
org.jitsi.jigasi.transcription.SEND_JSON=true
org.jitsi.jigasi.transcription.SEND_JSON_REMOTE_URLS=""
org.jitsi.jigasi.transcription.SAVE_TXT=false
org.jitsi.jigasi.transcription.SEND_TXT=false

org.jitsi.jigasi.transcription.customService=org.jitsi.jigasi.transcription.VoskTranscriptionService
org.jitsi.jigasi.transcription.vosk.websocket_url=ws://localhost:2700

org.jitsi.jigasi.transcription.RECORD_AUDIO=false
org.jitsi.jigasi.transcription.RECORD_AUDIO_FORMAT=wav

Output of /about/stats, without conference_sizes:

{
  "total_calls_with_connection_failed": 0,
  "threads": 120,
  "total_count_dropped_media": 0,
  "stress_level": 0,
  "graceful_shutdown": false,
  "total_conference_seconds": 185,
  "total_calls_with_sip_call_waiting": 0,
  "total_calls_no_heartbeat_response": 0,
  "total_conferences_completed": 5,
  "total_calls_with_sip_call_reconnected": 0,
  "current_timestamp": "2023-11-08 14:05:16.762",
  "total_participants": 20,
  "total_calls_jvb_no_media": 0,
  "conferences": 0,
  "total_calls_with_jvb_migrate": 0,
  "participants": 0,
  "total_calls_with_dropped_media": 0
}

Following is the log of the flow: click on 'start subtitles', talk for some seconds, end the conference. (the java.net.MalformedURLException exception can be avoided by commenting a line in the config file - I didn't want to filter out anything right now).

Nov 08, 2023 9:30:41 AM org.jitsi.utils.logging.LoggerImpl log
WARNING: Requests are not secured by JID filter!
Nov 08, 2023 9:30:41 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] Got dial request null -> jitsi_meet_transcribe room: [email protected]
Nov 08, 2023 9:30:41 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] Starting JVB conference room: [email protected]
Nov 08, 2023 9:30:41 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] Using ProtocolProviderServiceJabberImpl(Jabber:[email protected]/32ae1cfe)
Nov 08, 2023 9:30:41 AM net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl$SaverThread run
SEVERE: Error writing packet to file
java.lang.SecurityException: Insufficient rights to access this file in current user's home directory: /config/log/jitsi0.pcap
        at org.jitsi.impl.fileaccess.FileAccessServiceImpl.getPrivatePersistentFile(FileAccessServiceImpl.java:171)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl.getFileNames(PacketLoggingServiceImpl.java:194)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl.savePacket(PacketLoggingServiceImpl.java:579)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl$SaverThread.run(PacketLoggingServiceImpl.java:833)
Nov 08, 2023 9:30:41 AM net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl$SaverThread run
SEVERE: Error writing packet to file
java.lang.SecurityException: Insufficient rights to access this file in current user's home directory: /config/log/jitsi0.pcap
        at org.jitsi.impl.fileaccess.FileAccessServiceImpl.getPrivatePersistentFile(FileAccessServiceImpl.java:171)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl.getFileNames(PacketLoggingServiceImpl.java:194)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl.savePacket(PacketLoggingServiceImpl.java:579)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl$SaverThread.run(PacketLoggingServiceImpl.java:833)
Nov 08, 2023 9:30:41 AM net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl$SaverThread run
SEVERE: Error writing packet to file
java.lang.SecurityException: Insufficient rights to access this file in current user's home directory: /config/log/jitsi0.pcap
        at org.jitsi.impl.fileaccess.FileAccessServiceImpl.getPrivatePersistentFile(FileAccessServiceImpl.java:171)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl.getFileNames(PacketLoggingServiceImpl.java:194)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl.savePacket(PacketLoggingServiceImpl.java:579)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl$SaverThread.run(PacketLoggingServiceImpl.java:833)
Nov 08, 2023 9:30:41 AM net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl$SaverThread run
SEVERE: Error writing packet to file
java.lang.SecurityException: Insufficient rights to access this file in current user's home directory: /config/log/jitsi0.pcap
        at org.jitsi.impl.fileaccess.FileAccessServiceImpl.getPrivatePersistentFile(FileAccessServiceImpl.java:171)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl.getFileNames(PacketLoggingServiceImpl.java:194)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl.savePacket(PacketLoggingServiceImpl.java:579)
        at net.java.sip.communicator.impl.packetlogging.PacketLoggingServiceImpl$SaverThread.run(PacketLoggingServiceImpl.java:833)
Nov 08, 2023 9:30:41 AM net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl registrationStateChanged
INFO: Jingle : ON
Nov 08, 2023 9:30:41 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] Registering XMPP.
Nov 08, 2023 9:30:41 AM net.java.sip.communicator.impl.protocol.jabber.ProtocolProviderServiceJabberImpl$JabberConnectionListener authenticated
INFO: Authenticated: false
Nov 08, 2023 9:30:41 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] Joining JVB conference room: [email protected]
Nov 08, 2023 9:30:41 AM net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl$MemberListener joined
INFO: [email protected]/focus has joined the [email protected] chat room.
Nov 08, 2023 9:30:41 AM net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl$MemberListener joined
INFO: [email protected]/88fdf67a has joined the [email protected] chat room.
Nov 08, 2023 9:30:41 AM net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl$MemberListener joined
INFO: [email protected]/32ae1cfe has joined the [email protected] chat room.
Nov 08, 2023 9:30:42 AM net.java.sip.communicator.impl.protocol.jabber.IceUdpTransportManager createIceAgent
INFO: End gathering harvester within 72 ms
Nov 08, 2023 9:30:42 AM net.java.sip.communicator.impl.protocol.jabber.CallPeerMediaHandlerJabberImpl harvestCandidates
INFO: End candidate harvest within 53 ms
Nov 08, 2023 9:30:42 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] Got invite from focus
Nov 08, 2023 9:30:42 AM org.jitsi.utils.logging.LoggerImpl log
SEVERE: Error posting transcription
java.net.MalformedURLException: no protocol: ""
        at java.base/java.net.URL.<init>(URL.java:645)
        at java.base/java.net.URL.<init>(URL.java:541)
        at java.base/java.net.URL.<init>(URL.java:488)
        at org.jitsi.jigasi.transcription.Util.postJSON(Util.java:48)
        at org.jitsi.jigasi.transcription.RemotePublisherTranscriptionHandler.notify(RemotePublisherTranscriptionHandler.java:107)
        at org.jitsi.jigasi.transcription.Transcriber.fireTranscribeEvent(Transcriber.java:937)
        at org.jitsi.jigasi.transcription.Transcriber.start(Transcriber.java:517)
        at org.jitsi.jigasi.TranscriptionGatewaySession.onConferenceCallStarted(TranscriptionGatewaySession.java:203)
        at org.jitsi.jigasi.TranscriptionGatewaySession.onConferenceCallInvited(TranscriptionGatewaySession.java:163)
        at org.jitsi.jigasi.JvbConference$JvbCallListener.incomingCallReceivedInternal(JvbConference.java:1494)
        at org.jitsi.jigasi.JvbConference$JvbCallListener.lambda$incomingCallReceived$0(JvbConference.java:1403)
        at org.jitsi.jigasi.JvbConference.lambda$static$0(JvbConference.java:169)
        at org.jitsi.utils.queue.PacketQueue$HandlerAdapter.handleItem(PacketQueue.java:416)
        at org.jitsi.utils.queue.AsyncQueueHandler$1.run(AsyncQueueHandler.java:137)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Nov 08, 2023 9:30:42 AM org.jitsi.utils.logging.LoggerImpl log
SEVERE: Error posting transcription
java.net.MalformedURLException: no protocol: ""
        at java.base/java.net.URL.<init>(URL.java:645)
        at java.base/java.net.URL.<init>(URL.java:541)
        at java.base/java.net.URL.<init>(URL.java:488)
        at org.jitsi.jigasi.transcription.Util.postJSON(Util.java:48)
        at org.jitsi.jigasi.transcription.RemotePublisherTranscriptionHandler.notify(RemotePublisherTranscriptionHandler.java:107)
        at org.jitsi.jigasi.transcription.Transcriber.fireTranscribeEvent(Transcriber.java:937)
        at org.jitsi.jigasi.transcription.Transcriber.participantJoined(Transcriber.java:304)
        at org.jitsi.jigasi.TranscriptionGatewaySession.addInitialMembers(TranscriptionGatewaySession.java:508)
        at org.jitsi.jigasi.TranscriptionGatewaySession.onConferenceCallStarted(TranscriptionGatewaySession.java:207)
        at org.jitsi.jigasi.TranscriptionGatewaySession.onConferenceCallInvited(TranscriptionGatewaySession.java:163)
        at org.jitsi.jigasi.JvbConference$JvbCallListener.incomingCallReceivedInternal(JvbConference.java:1494)
        at org.jitsi.jigasi.JvbConference$JvbCallListener.lambda$incomingCallReceived$0(JvbConference.java:1403)
        at org.jitsi.jigasi.JvbConference.lambda$static$0(JvbConference.java:169)
        at org.jitsi.utils.queue.PacketQueue$HandlerAdapter.handleItem(PacketQueue.java:416)
        at org.jitsi.utils.queue.AsyncQueueHandler$1.run(AsyncQueueHandler.java:137)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Nov 08, 2023 9:30:42 AM org.jitsi.utils.logging.LoggerImpl log
INFO: Transcriber: Media Device Audio
Nov 08, 2023 9:30:42 AM net.java.sip.communicator.service.protocol.media.MediaHandler registerDynamicPTsWithStream
INFO: Dynamic PT map: 126=rtpmap:-1 telephone-event/8000; 111=rtpmap:-1 opus/48000/2 fmtp:useinbandfec=1;minptime=10; 103=rtpmap:-1 unknown/90000;
Nov 08, 2023 9:30:42 AM net.java.sip.communicator.service.protocol.media.MediaHandler registerDynamicPTsWithStream
INFO: PT overrides [103->104 ]
Nov 08, 2023 9:30:42 AM net.java.sip.communicator.service.protocol.media.CallPeerMediaHandler start
INFO: Starting
Nov 08, 2023 9:30:42 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] JVB conference call IN_PROGRESS.
Nov 08, 2023 9:31:01 AM org.jitsi.utils.logging.LoggerImpl log
SEVERE: Error posting transcription
java.net.MalformedURLException: no protocol: ""
        at java.base/java.net.URL.<init>(URL.java:645)
        at java.base/java.net.URL.<init>(URL.java:541)
        at java.base/java.net.URL.<init>(URL.java:488)
        at org.jitsi.jigasi.transcription.Util.postJSON(Util.java:48)
        at org.jitsi.jigasi.transcription.RemotePublisherTranscriptionHandler.publish(RemotePublisherTranscriptionHandler.java:79)
        at org.jitsi.jigasi.transcription.TranscriptHandler.publishTranscriptionResult(TranscriptHandler.java:146)
        at org.jitsi.jigasi.TranscriptionGatewaySession.sendTranscriptionResultToRoom(TranscriptionGatewaySession.java:641)
        at org.jitsi.jigasi.TranscriptionGatewaySession.notify(TranscriptionGatewaySession.java:373)
        at org.jitsi.jigasi.transcription.Transcriber.notify(Transcriber.java:885)
        at org.jitsi.jigasi.transcription.Participant.notify(Participant.java:581)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService$VoskWebsocketStreamingSession.onMessage(VoskTranscriptionService.java:283)
        at org.eclipse.jetty.websocket.core.internal.messages.StringMessageSink.accept(StringMessageSink.java:53)
        at org.eclipse.jetty.websocket.common.JettyWebSocketFrameHandler.acceptMessage(JettyWebSocketFrameHandler.java:334)
        at org.eclipse.jetty.websocket.common.JettyWebSocketFrameHandler.onTextFrame(JettyWebSocketFrameHandler.java:407)
        at org.eclipse.jetty.websocket.common.JettyWebSocketFrameHandler.onFrame(JettyWebSocketFrameHandler.java:240)
        at org.eclipse.jetty.websocket.core.internal.WebSocketCoreSession$IncomingAdaptor.lambda$onFrame$1(WebSocketCoreSession.java:671)
        at org.eclipse.jetty.websocket.core.internal.WebSocketCoreSession.handle(WebSocketCoreSession.java:118)
        at org.eclipse.jetty.websocket.core.internal.WebSocketCoreSession$IncomingAdaptor.onFrame(WebSocketCoreSession.java:671)
        at org.eclipse.jetty.websocket.core.internal.ExtensionStack.onFrame(ExtensionStack.java:120)
        at org.eclipse.jetty.websocket.core.internal.WebSocketCoreSession.onFrame(WebSocketCoreSession.java:481)
        at org.eclipse.jetty.websocket.core.internal.WebSocketConnection.onFrame(WebSocketConnection.java:262)
        at org.eclipse.jetty.websocket.core.internal.WebSocketConnection.fillAndParse(WebSocketConnection.java:455)
        at org.eclipse.jetty.websocket.core.internal.WebSocketConnection.onFillable(WebSocketConnection.java:340)
        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:319)
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100)
        at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
        at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:412)
        at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:381)
        at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:268)
        at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.lambda$new$0(AdaptiveExecutionStrategy.java:138)
        at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:407)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:894)
        at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1038)
        at java.base/java.lang.Thread.run(Thread.java:829)
Nov 08, 2023 9:31:04 AM org.jitsi.utils.logging.LoggerImpl log
SEVERE: Error posting transcription
java.net.MalformedURLException: no protocol: ""
        at java.base/java.net.URL.<init>(URL.java:645)
        at java.base/java.net.URL.<init>(URL.java:541)
        at java.base/java.net.URL.<init>(URL.java:488)
        at org.jitsi.jigasi.transcription.Util.postJSON(Util.java:48)
        at org.jitsi.jigasi.transcription.RemotePublisherTranscriptionHandler.publish(RemotePublisherTranscriptionHandler.java:79)
        at org.jitsi.jigasi.transcription.TranscriptHandler.publishTranscriptionResult(TranscriptHandler.java:146)
        at org.jitsi.jigasi.TranscriptionGatewaySession.sendTranscriptionResultToRoom(TranscriptionGatewaySession.java:641)
        at org.jitsi.jigasi.TranscriptionGatewaySession.notify(TranscriptionGatewaySession.java:373)
        at org.jitsi.jigasi.transcription.Transcriber.notify(Transcriber.java:885)
        at org.jitsi.jigasi.transcription.Participant.notify(Participant.java:581)
        at org.jitsi.jigasi.transcription.VoskTranscriptionService$VoskWebsocketStreamingSession.onMessage(VoskTranscriptionService.java:283)
        at org.eclipse.jetty.websocket.core.internal.messages.StringMessageSink.accept(StringMessageSink.java:53)
        at org.eclipse.jetty.websocket.common.JettyWebSocketFrameHandler.acceptMessage(JettyWebSocketFrameHandler.java:334)
        at org.eclipse.jetty.websocket.common.JettyWebSocketFrameHandler.onTextFrame(JettyWebSocketFrameHandler.java:407)
        at org.eclipse.jetty.websocket.common.JettyWebSocketFrameHandler.onFrame(JettyWebSocketFrameHandler.java:240)
        at org.eclipse.jetty.websocket.core.internal.WebSocketCoreSession$IncomingAdaptor.lambda$onFrame$1(WebSocketCoreSession.java:671)
        at org.eclipse.jetty.websocket.core.internal.WebSocketCoreSession.handle(WebSocketCoreSession.java:118)
        at org.eclipse.jetty.websocket.core.internal.WebSocketCoreSession$IncomingAdaptor.onFrame(WebSocketCoreSession.java:671)
        at org.eclipse.jetty.websocket.core.internal.ExtensionStack.onFrame(ExtensionStack.java:120)
        at org.eclipse.jetty.websocket.core.internal.WebSocketCoreSession.onFrame(WebSocketCoreSession.java:481)
        at org.eclipse.jetty.websocket.core.internal.WebSocketConnection.onFrame(WebSocketConnection.java:262)
        at org.eclipse.jetty.websocket.core.internal.WebSocketConnection.fillAndParse(WebSocketConnection.java:455)
        at org.eclipse.jetty.websocket.core.internal.WebSocketConnection.onFillable(WebSocketConnection.java:340)
        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:319)
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100)
        at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)
        at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:412)
        at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:381)
        at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:268)
        at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.lambda$new$0(AdaptiveExecutionStrategy.java:138)
        at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:407)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:894)
        at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1038)
        at java.base/java.lang.Thread.run(Thread.java:829)
Nov 08, 2023 9:31:08 AM net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl$MemberListener left
INFO: [email protected]/88fdf67a has left the [email protected] chat room.
Nov 08, 2023 9:31:08 AM org.jitsi.utils.logging.LoggerImpl log
SEVERE: Error posting transcription
java.net.MalformedURLException: no protocol: ""
        at java.base/java.net.URL.<init>(URL.java:645)
        at java.base/java.net.URL.<init>(URL.java:541)
        at java.base/java.net.URL.<init>(URL.java:488)
        at org.jitsi.jigasi.transcription.Util.postJSON(Util.java:48)
        at org.jitsi.jigasi.transcription.RemotePublisherTranscriptionHandler.notify(RemotePublisherTranscriptionHandler.java:107)
        at org.jitsi.jigasi.transcription.Transcriber.fireTranscribeEvent(Transcriber.java:937)
        at org.jitsi.jigasi.transcription.Transcriber.participantLeft(Transcriber.java:480)
        at org.jitsi.jigasi.TranscriptionGatewaySession.notifyChatRoomMemberLeft(TranscriptionGatewaySession.java:297)
        at org.jitsi.jigasi.JvbConference.memberPresenceChangedInternal(JvbConference.java:1175)
        at org.jitsi.jigasi.JvbConference.lambda$memberPresenceChanged$3(JvbConference.java:1130)
        at org.jitsi.jigasi.JvbConference.lambda$static$0(JvbConference.java:169)
        at org.jitsi.utils.queue.PacketQueue$HandlerAdapter.handleItem(PacketQueue.java:416)
        at org.jitsi.utils.queue.AsyncQueueHandler$1.run(AsyncQueueHandler.java:137)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Nov 08, 2023 9:31:08 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] Member left : OWNER [email protected]/hSVw8HHr
Nov 08, 2023 9:31:11 AM org.jitsi.utils.logging.LoggerImpl log
SEVERE: Error posting transcription
java.net.MalformedURLException: no protocol: ""
        at java.base/java.net.URL.<init>(URL.java:645)
        at java.base/java.net.URL.<init>(URL.java:541)
        at java.base/java.net.URL.<init>(URL.java:488)
        at org.jitsi.jigasi.transcription.Util.postJSON(Util.java:48)
        at org.jitsi.jigasi.transcription.RemotePublisherTranscriptionHandler.notify(RemotePublisherTranscriptionHandler.java:107)
        at org.jitsi.jigasi.transcription.Transcriber.fireTranscribeEvent(Transcriber.java:937)
        at org.jitsi.jigasi.transcription.Transcriber.willStop(Transcriber.java:596)
        at org.jitsi.jigasi.TranscriptionGatewaySession.onJvbConferenceWillStop(TranscriptionGatewaySession.java:271)
        at org.jitsi.jigasi.JvbConference.stop(JvbConference.java:569)
        at org.jitsi.jigasi.TranscriptionGatewaySession.lambda$notifyChatRoomMemberUpdated$0(TranscriptionGatewaySession.java:326)
        at java.base/java.lang.Thread.run(Thread.java:829)
Nov 08, 2023 9:31:11 AM net.java.sip.communicator.impl.protocol.jabber.ChatRoomJabberImpl leave
WARNING: Force sending presence unavailable to [email protected] for 32ae1cfe
Nov 08, 2023 9:31:11 AM org.jitsi.utils.logging.LoggerImpl log
SEVERE: Error posting transcription
java.net.MalformedURLException: no protocol: ""
        at java.base/java.net.URL.<init>(URL.java:645)
        at java.base/java.net.URL.<init>(URL.java:541)
        at java.base/java.net.URL.<init>(URL.java:488)
        at org.jitsi.jigasi.transcription.Util.postJSON(Util.java:48)
        at org.jitsi.jigasi.transcription.RemotePublisherTranscriptionHandler.notify(RemotePublisherTranscriptionHandler.java:107)
        at org.jitsi.jigasi.transcription.Transcriber.fireTranscribeEvent(Transcriber.java:937)
        at org.jitsi.jigasi.transcription.Transcriber.stop(Transcriber.java:546)
        at org.jitsi.jigasi.TranscriptionGatewaySession.onJvbConferenceStopped(TranscriptionGatewaySession.java:252)
        at org.jitsi.jigasi.JvbConference.stop(JvbConference.java:598)
        at org.jitsi.jigasi.TranscriptionGatewaySession.lambda$notifyChatRoomMemberUpdated$0(TranscriptionGatewaySession.java:326)
        at java.base/java.lang.Thread.run(Thread.java:829)
Nov 08, 2023 9:31:11 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] Member left : OWNER [email protected]/focus
Nov 08, 2023 9:31:11 AM org.jitsi.utils.logging.LoggerImpl log
WARNING: [email protected]: participant with identifier 32ae1cfe left while it did not exist
Nov 08, 2023 9:31:11 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] Removed session for call. Sessions:0
Nov 08, 2023 9:31:11 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] Member left : MEMBER [email protected]
Nov 08, 2023 9:31:11 AM org.jitsi.utils.logging.LoggerImpl log
SEVERE: Failed to send a packet to target /172.20.0.1:10000:java.io.IOException: No active socket.
Nov 08, 2023 9:31:11 AM org.jitsi.utils.logging.LoggerImpl log
SEVERE: Failed to send a packet to target /172.20.0.1:10000:java.io.IOException: No active socket.
Nov 08, 2023 9:31:11 AM net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl registrationStateChanged
INFO: Jingle : OFF
Nov 08, 2023 9:31:11 AM org.jitsi.utils.logging.LoggerImpl log
INFO: [ctx=1699453841806513592582] Removing account Jabber:[email protected]/32ae1cfe
Nov 08, 2023 9:31:11 AM net.java.sip.communicator.impl.protocol.jabber.OperationSetBasicTelephonyJabberImpl registrationStateChanged
INFO: Jingle : OFF

I took a thread dump a little before the above output. I don't know if this is helpful, but here it goes:

313-gb21f752-1|⇒ awk '/State: / { print }' < jigasi-docker-logs-313-gb21f752-1.txt|sort|uniq -c
   1    java.lang.Thread.State: BLOCKED (on object monitor)
  23    java.lang.Thread.State: RUNNABLE
   8    java.lang.Thread.State: TIMED_WAITING (on object monitor)
  45    java.lang.Thread.State: TIMED_WAITING (parking)
  12    java.lang.Thread.State: WAITING (on object monitor)
  13    java.lang.Thread.State: WAITING (parking)

And those threads:

313-gb21f752-1|⇒ awk '/parking to wait for / { print }' < jigasi-docker-logs-313-gb21f752-1.txt|sort|uniq -c
   1 	- parking to wait for  <0x0000000740a2de70> (a java.util.concurrent.ForkJoinPool)
   1 	- parking to wait for  <0x0000000740df1518> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   2 	- parking to wait for  <0x0000000740df1828> (a java.util.concurrent.SynchronousQueue$TransferStack)
   1 	- parking to wait for  <0x0000000740e8a5a8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   1 	- parking to wait for  <0x000000074128a990> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   1 	- parking to wait for  <0x00000007412df450> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   3 	- parking to wait for  <0x00000007412f42a8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   4 	- parking to wait for  <0x0000000741300fb8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   1 	- parking to wait for  <0x0000000741450d68> (a java.util.concurrent.SynchronousQueue$TransferStack)
   1 	- parking to wait for  <0x00000007415ceaa8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   7 	- parking to wait for  <0x0000000741687480> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   1 	- parking to wait for  <0x00000007416a5870> (a java.util.concurrent.SynchronousQueue$TransferStack)
   1 	- parking to wait for  <0x00000007416a6db8> (a java.util.concurrent.SynchronousQueue$TransferStack)
   1 	- parking to wait for  <0x00000007418fc1c0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   5 	- parking to wait for  <0x000000074204a310> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   2 	- parking to wait for  <0x000000074204cb28> (a java.util.concurrent.SynchronousQueue$TransferStack)
   1 	- parking to wait for  <0x000000074204cca8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   7 	- parking to wait for  <0x0000000742052a88> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   1 	- parking to wait for  <0x000000074205f338> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   7 	- parking to wait for  <0x00000007433069a0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   1 	- parking to wait for  <0x00000007433077d8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   2 	- parking to wait for  <0x00000007433486d8> (a java.util.concurrent.SynchronousQueue$TransferStack)
   5 	- parking to wait for  <0x00000007433488c0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
   1 	- parking to wait for  <0x0000000743349208> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
@arnaldopereira
Copy link
Author

By the way, I just confirmed the issue doesn't appear when using google service for transcription.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant