Skip to content
This repository has been archived by the owner on Jul 12, 2023. It is now read-only.

Kurento Java Group Call example crashes when second party joins a room #617

Open
3 tasks done
neilyoung opened this issue Dec 20, 2021 · 1 comment
Open
3 tasks done

Comments

@neilyoung
Copy link

Prerequisites

These are MANDATORY, otherwise the issue will be automatically closed.

Issue description

The Kurento Group Call Example crashes when a second party joins a room where already another participant is waiting

Context

I was just trying to run the sample :)

I launched the the Java app like so:

mvn -U clean spring-boot:run  -Dspring-boot.run.jvmArguments="-Dkms.url=ws://webrtc:8888/kurento"

My KMS runs at webrtc:8888 in my local network.

When the first party ("Alice") joins, the own video appears top left 320x240. Then on a second party ("Bob") joins the same room and boom.

The log from the Java side:

~/Documents/tmp/kurento-tutorial-java/kurento-group-call $ mvn -U clean spring-boot:run     -Dspring-boot.run.jvmArguments="-Dkms.url=ws://webrtc:8888/kurento"
[INFO] Scanning for projects...
[INFO] 
[INFO] --------------< org.kurento.tutorial:kurento-group-call >---------------
[INFO] Building Kurento Java Tutorial - Group Call 6.16.0
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:3.1.0:clean (default-clean) @ kurento-group-call ---
[INFO] Deleting /Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call/target
[INFO] 
[INFO] >>> spring-boot-maven-plugin:2.3.5.RELEASE:run (default-cli) > test-compile @ kurento-group-call >>>
[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-java-version) @ kurento-group-call ---
[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-maven-version) @ kurento-group-call ---
[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-bytecode-version) @ kurento-group-call ---
[INFO] Adding ignore: module-info
[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-ban-duplicate-classes) @ kurento-group-call ---
[INFO] Adding ignore: module-info
[INFO] Adding ignore: META-INF/versions/*/module-info
[WARNING] Rule 0: org.apache.maven.plugins.enforcer.BanDuplicateClasses failed with message:
Duplicate classes found:

  Found in:
    commons-logging:commons-logging:jar:1.2:compile
    org.springframework:spring-jcl:jar:5.2.10.RELEASE:compile
  Duplicate classes:
    org/apache/commons/logging/Log.class
    org/apache/commons/logging/LogFactory$1.class
    org/apache/commons/logging/impl/NoOpLog.class
    org/apache/commons/logging/impl/SimpleLog.class
    org/apache/commons/logging/LogFactory.class

[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-ban-circular-dependencies) @ kurento-group-call ---
[INFO] 
[INFO] --- buildnumber-maven-plugin:1.4:create-timestamp (get-build-timestamp) @ kurento-group-call ---
[INFO] 
[INFO] --- buildnumber-maven-plugin:1.4:create (get-scm-revision) @ kurento-group-call ---
[INFO] Executing: /bin/sh -c cd '/Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call' && 'git' 'rev-parse' '--verify' 'HEAD'
[INFO] Working directory: /Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call
[INFO] Storing buildNumber: d235d82ba4d15dff52e63667c17e58a876d45b80 at timestamp: 1639990415668
[INFO] Storing buildScmBranch: master
[INFO] 
[INFO] --- maven-resources-plugin:3.2.0:resources (default-resources) @ kurento-group-call ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] Copying 7 resources
[INFO] Copying 2 resources
[INFO] The encoding used to copy filtered properties files have not been set. This means that the same encoding will be used to copy filtered properties files as when copying other filtered resources. This might not be what you want! Run your build with --debug to see which files might be affected. Read more at https://maven.apache.org/plugins/maven-resources-plugin/examples/filtering-properties-files.html
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ kurento-group-call ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 6 source files to /Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call/target/classes
[WARNING] bootstrap class path not set in conjunction with -source 8
[INFO] 
[INFO] --- maven-resources-plugin:3.2.0:testResources (default-testResources) @ kurento-group-call ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] skip non existing resourceDirectory /Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call/src/test/resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ kurento-group-call ---
[INFO] No sources to compile
[INFO] 
[INFO] <<< spring-boot-maven-plugin:2.3.5.RELEASE:run (default-cli) < test-compile @ kurento-group-call <<<
[INFO] 
[INFO] 
[INFO] --- spring-boot-maven-plugin:2.3.5.RELEASE:run (default-cli) @ kurento-group-call ---
[INFO] Attaching agents: []

   .------------------------------------.
   |                                    |
   |   | |/ /  _ _ _ ___ _ _| |_ ___    |
   |   | ' < || | '_/ -_) ' \  _/ _ \   |
   |   |_|\_\_,_|_| \___|_||_\__\___/   |
   |                                    |
   '------------------------------------'
       Kurento Java Tutorial - Group Call
       Version 6.16.0

2021-12-20 09:53:39.487  INFO 39241 --- [           main] o.k.tutorial.groupcall.GroupCallApp      : Starting GroupCallApp on MacBook-Pro.fritz.box with PID 39241 (/Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call/target/classes started by decades in /Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call)
2021-12-20 09:53:39.491  INFO 39241 --- [           main] o.k.tutorial.groupcall.GroupCallApp      : No active profile set, falling back to default profiles: default
2021-12-20 09:53:40.649  INFO 39241 --- [rbeatExec-e1-t0] o.k.j.c.JsonRpcClientNettyWebSocket      : [KurentoClient]  Connecting native client
2021-12-20 09:53:40.653  INFO 39241 --- [rbeatExec-e1-t0] o.k.j.c.JsonRpcClientNettyWebSocket      : [KurentoClient]  Creating new NioEventLoopGroup
2021-12-20 09:53:40.737  INFO 39241 --- [ntLoopGroup-2-1] o.k.j.c.JsonRpcClientNettyWebSocket      : [KurentoClient]  Initiating new Netty channel. Will create new handler too!
2021-12-20 09:53:41.748  INFO 39241 --- [           main] o.k.tutorial.groupcall.GroupCallApp      : Started GroupCallApp in 2.818 seconds (JVM running for 3.214)
^C2021-12-20 09:53:45.299  WARN 39241 --- [extShutdownHook] o.k.j.c.AbstractJsonRpcClientWebSocket   : [KurentoClient]  Exception sending close message. org.kurento.jsonrpc.JsonRpcErrorException:'params' is requiered. Code: -32602. Data: {"type":"INVALID_PARAMS"}
2021-12-20 09:53:45.300  INFO 39241 --- [ntLoopGroup-2-1] o.k.j.c.JsonRpcClientNettyWebSocket      : [KurentoClient]  channel closed
2021-12-20 09:53:45.306  WARN 39241 --- [extShutdownHook] o.k.j.c.AbstractJsonRpcClientWebSocket   : [KurentoClient]  Exception sending close message. org.kurento.jsonrpc.JsonRpcClientClosedException:Trying to send a message in a client closed explicitly. When a client is closed, it can't be reused. It is necessary to create another one
2021-12-20 09:53:45.306  WARN 39241 --- [extShutdownHook] o.k.j.c.JsonRpcClientNettyWebSocket      : [KurentoClient]  Trying to close a JsonRpcClientNettyWebSocket with channel == null
2021-12-20 09:53:45.307  WARN 39241 --- [extShutdownHook] o.k.j.c.JsonRpcClientNettyWebSocket      : [KurentoClient]  Trying to close a JsonRpcClientNettyWebSocket with group == null
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  14.131 s
[INFO] Finished at: 2021-12-20T09:53:45+01:00
[INFO] ------------------------------------------------------------------------
~/Documents/tmp/kurento-tutorial-java/kurento-group-call $ git checkout 6.16.1
error: Pfadspezifikation '6.16.1' stimmt mit keinen Git bekannten Dateien überein
~/Documents/tmp/kurento-tutorial-java/kurento-group-call $ mvn -U clean spring-boot:run     -Dspring-boot.run.jvmArguments="-Dkms.url=ws://webrtc:8888/kurento"
[INFO] Scanning for projects...
[INFO] 
[INFO] --------------< org.kurento.tutorial:kurento-group-call >---------------
[INFO] Building Kurento Java Tutorial - Group Call 6.16.0
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:3.1.0:clean (default-clean) @ kurento-group-call ---
[INFO] Deleting /Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call/target
[INFO] 
[INFO] >>> spring-boot-maven-plugin:2.3.5.RELEASE:run (default-cli) > test-compile @ kurento-group-call >>>
[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-java-version) @ kurento-group-call ---
[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-maven-version) @ kurento-group-call ---
[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-bytecode-version) @ kurento-group-call ---
[INFO] Adding ignore: module-info
[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-ban-duplicate-classes) @ kurento-group-call ---
[INFO] Adding ignore: module-info
[INFO] Adding ignore: META-INF/versions/*/module-info
[WARNING] Rule 0: org.apache.maven.plugins.enforcer.BanDuplicateClasses failed with message:
Duplicate classes found:

  Found in:
    commons-logging:commons-logging:jar:1.2:compile
    org.springframework:spring-jcl:jar:5.2.10.RELEASE:compile
  Duplicate classes:
    org/apache/commons/logging/Log.class
    org/apache/commons/logging/LogFactory$1.class
    org/apache/commons/logging/impl/NoOpLog.class
    org/apache/commons/logging/impl/SimpleLog.class
    org/apache/commons/logging/LogFactory.class

[INFO] 
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-ban-circular-dependencies) @ kurento-group-call ---
[INFO] 
[INFO] --- buildnumber-maven-plugin:1.4:create-timestamp (get-build-timestamp) @ kurento-group-call ---
[INFO] 
[INFO] --- buildnumber-maven-plugin:1.4:create (get-scm-revision) @ kurento-group-call ---
[INFO] Executing: /bin/sh -c cd '/Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call' && 'git' 'rev-parse' '--verify' 'HEAD'
[INFO] Working directory: /Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call
[INFO] Storing buildNumber: d235d82ba4d15dff52e63667c17e58a876d45b80 at timestamp: 1639990445376
[INFO] Storing buildScmBranch: master
[INFO] 
[INFO] --- maven-resources-plugin:3.2.0:resources (default-resources) @ kurento-group-call ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] Copying 7 resources
[INFO] Copying 2 resources
[INFO] The encoding used to copy filtered properties files have not been set. This means that the same encoding will be used to copy filtered properties files as when copying other filtered resources. This might not be what you want! Run your build with --debug to see which files might be affected. Read more at https://maven.apache.org/plugins/maven-resources-plugin/examples/filtering-properties-files.html
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ kurento-group-call ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 6 source files to /Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call/target/classes
[WARNING] bootstrap class path not set in conjunction with -source 8
[INFO] 
[INFO] --- maven-resources-plugin:3.2.0:testResources (default-testResources) @ kurento-group-call ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] skip non existing resourceDirectory /Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call/src/test/resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ kurento-group-call ---
[INFO] No sources to compile
[INFO] 
[INFO] <<< spring-boot-maven-plugin:2.3.5.RELEASE:run (default-cli) < test-compile @ kurento-group-call <<<
[INFO] 
[INFO] 
[INFO] --- spring-boot-maven-plugin:2.3.5.RELEASE:run (default-cli) @ kurento-group-call ---
[INFO] Attaching agents: []

   .------------------------------------.
   |                                    |
   |   | |/ /  _ _ _ ___ _ _| |_ ___    |
   |   | ' < || | '_/ -_) ' \  _/ _ \   |
   |   |_|\_\_,_|_| \___|_||_\__\___/   |
   |                                    |
   '------------------------------------'
       Kurento Java Tutorial - Group Call
       Version 6.16.0

2021-12-20 09:54:09.062  INFO 39280 --- [           main] o.k.tutorial.groupcall.GroupCallApp      : Starting GroupCallApp on MacBook-Pro.fritz.box with PID 39280 (/Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call/target/classes started by decades in /Users/decades/Documents/tmp/kurento-tutorial-java/kurento-group-call)
2021-12-20 09:54:09.066  INFO 39280 --- [           main] o.k.tutorial.groupcall.GroupCallApp      : No active profile set, falling back to default profiles: default
2021-12-20 09:54:10.197  INFO 39280 --- [rbeatExec-e1-t0] o.k.j.c.JsonRpcClientNettyWebSocket      : [KurentoClient]  Connecting native client
2021-12-20 09:54:10.200  INFO 39280 --- [rbeatExec-e1-t0] o.k.j.c.JsonRpcClientNettyWebSocket      : [KurentoClient]  Creating new NioEventLoopGroup
2021-12-20 09:54:10.277  INFO 39280 --- [ntLoopGroup-2-1] o.k.j.c.JsonRpcClientNettyWebSocket      : [KurentoClient]  Initiating new Netty channel. Will create new handler too!
2021-12-20 09:54:11.295  INFO 39280 --- [           main] o.k.tutorial.groupcall.GroupCallApp      : Started GroupCallApp in 2.79 seconds (JVM running for 3.189)
2021-12-20 09:54:34.238  INFO 39280 --- [nio-8443-exec-1] o.k.tutorial.groupcall.CallHandler       : PARTICIPANT Alice: trying to join room abcd
2021-12-20 09:54:34.300  INFO 39280 --- [nio-8443-exec-1] org.kurento.tutorial.groupcall.Room      : ROOM abcd has been created
2021-12-20 09:54:34.300  INFO 39280 --- [nio-8443-exec-1] org.kurento.tutorial.groupcall.Room      : ROOM abcd: adding participant Alice
2021-12-20 09:54:36.160  INFO 39280 --- [nio-8443-exec-8] o.k.tutorial.groupcall.UserSession       : USER Alice: connecting with Alice in room abcd
2021-12-20 09:54:51.230  INFO 39280 --- [nio-8443-exec-4] o.k.tutorial.groupcall.CallHandler       : PARTICIPANT Bob: trying to join room abcd
2021-12-20 09:54:51.231  INFO 39280 --- [nio-8443-exec-4] org.kurento.tutorial.groupcall.Room      : ROOM abcd: adding participant Bob
2021-12-20 09:54:51.267 ERROR 39280 --- [nio-8443-exec-4] w.s.h.ExceptionWebSocketHandlerDecorator : Closing session due to exception for StandardWebSocketSession[id=5f224b36-3b36-98d7-7077-3572d6287e65, uri=wss://localhost:8443/groupcall]

org.kurento.client.internal.server.KurentoServerException: Object '44d72889-9ccd-4525-8dcc-bb60f922bed4_kurento.MediaPipeline' not found (Code:40101, Type:null, Data: {"type":"MEDIA_OBJECT_NOT_FOUND"})
	at org.kurento.client.internal.transport.jsonrpc.RomClientJsonRpcClient.sendRequest(RomClientJsonRpcClient.java:264) ~[kurento-client-6.16.0.jar:6.16.0]
	at org.kurento.client.internal.transport.jsonrpc.RomClientJsonRpcClient.create(RomClientJsonRpcClient.java:157) ~[kurento-client-6.16.0.jar:6.16.0]
	at org.kurento.client.internal.transport.jsonrpc.RomClientJsonRpcClient.create(RomClientJsonRpcClient.java:147) ~[kurento-client-6.16.0.jar:6.16.0]
	at org.kurento.client.internal.client.RomManager.create(RomManager.java:59) ~[kurento-client-6.16.0.jar:6.16.0]
	at org.kurento.client.internal.client.RomManager.createWithKurentoObject(RomManager.java:257) ~[kurento-client-6.16.0.jar:6.16.0]
	at org.kurento.client.AbstractBuilder.build(AbstractBuilder.java:65) ~[kurento-client-6.16.0.jar:6.16.0]
	at org.kurento.tutorial.groupcall.UserSession.<init>(UserSession.java:64) ~[classes/:na]
	at org.kurento.tutorial.groupcall.Room.join(Room.java:69) ~[classes/:na]
	at org.kurento.tutorial.groupcall.CallHandler.joinRoom(CallHandler.java:103) ~[classes/:na]
	at org.kurento.tutorial.groupcall.CallHandler.handleTextMessage(CallHandler.java:66) ~[classes/:na]
	at org.springframework.web.socket.handler.AbstractWebSocketHandler.handleMessage(AbstractWebSocketHandler.java:43) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.handler.WebSocketHandlerDecorator.handleMessage(WebSocketHandlerDecorator.java:75) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.handler.LoggingWebSocketHandlerDecorator.handleMessage(LoggingWebSocketHandlerDecorator.java:56) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.handler.ExceptionWebSocketHandlerDecorator.handleMessage(ExceptionWebSocketHandlerDecorator.java:58) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter.handleTextMessage(StandardWebSocketHandlerAdapter.java:114) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter.access$000(StandardWebSocketHandlerAdapter.java:43) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter$3.onMessage(StandardWebSocketHandlerAdapter.java:85) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter$3.onMessage(StandardWebSocketHandlerAdapter.java:82) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.apache.tomcat.websocket.WsFrameBase.sendMessageText(WsFrameBase.java:402) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.server.WsFrameServer.sendMessageText(WsFrameServer.java:119) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.WsFrameBase.processDataText(WsFrameBase.java:502) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.WsFrameBase.processData(WsFrameBase.java:301) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.WsFrameBase.processInputBuffer(WsFrameBase.java:133) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServer.java:82) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.server.WsFrameServer.doOnDataAvailable(WsFrameServer.java:171) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.server.WsFrameServer.notifyDataAvailable(WsFrameServer.java:151) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:148) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:54) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:59) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]

2021-12-20 09:54:51.272  WARN 39280 --- [nio-8443-exec-4] w.s.h.ExceptionWebSocketHandlerDecorator : Unhandled exception after connection closed for ExceptionWebSocketHandlerDecorator [delegate=LoggingWebSocketHandlerDecorator [delegate=org.kurento.tutorial.groupcall.CallHandler@706fe5c6]]

java.lang.NullPointerException: null
	at org.kurento.tutorial.groupcall.UserRegistry.removeBySession(UserRegistry.java:57) ~[classes/:na]
	at org.kurento.tutorial.groupcall.CallHandler.afterConnectionClosed(CallHandler.java:93) ~[classes/:na]
	at org.springframework.web.socket.handler.WebSocketHandlerDecorator.afterConnectionClosed(WebSocketHandlerDecorator.java:85) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.handler.LoggingWebSocketHandlerDecorator.afterConnectionClosed(LoggingWebSocketHandlerDecorator.java:72) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.handler.ExceptionWebSocketHandlerDecorator.afterConnectionClosed(ExceptionWebSocketHandlerDecorator.java:78) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter.onClose(StandardWebSocketHandlerAdapter.java:145) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.apache.tomcat.websocket.WsSession.fireEndpointOnClose(WsSession.java:556) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.WsSession.doClose(WsSession.java:502) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.WsSession.doClose(WsSession.java:460) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.WsSession.close(WsSession.java:447) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.springframework.web.socket.adapter.standard.StandardWebSocketSession.closeInternal(StandardWebSocketSession.java:235) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.adapter.AbstractWebSocketSession.close(AbstractWebSocketSession.java:142) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.handler.ExceptionWebSocketHandlerDecorator.tryCloseWithError(ExceptionWebSocketHandlerDecorator.java:94) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.handler.ExceptionWebSocketHandlerDecorator.handleMessage(ExceptionWebSocketHandlerDecorator.java:61) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter.handleTextMessage(StandardWebSocketHandlerAdapter.java:114) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter.access$000(StandardWebSocketHandlerAdapter.java:43) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter$3.onMessage(StandardWebSocketHandlerAdapter.java:85) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter$3.onMessage(StandardWebSocketHandlerAdapter.java:82) ~[spring-websocket-5.2.10.RELEASE.jar:5.2.10.RELEASE]
	at org.apache.tomcat.websocket.WsFrameBase.sendMessageText(WsFrameBase.java:402) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.server.WsFrameServer.sendMessageText(WsFrameServer.java:119) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.WsFrameBase.processDataText(WsFrameBase.java:502) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.WsFrameBase.processData(WsFrameBase.java:301) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.WsFrameBase.processInputBuffer(WsFrameBase.java:133) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServer.java:82) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.server.WsFrameServer.doOnDataAvailable(WsFrameServer.java:171) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.server.WsFrameServer.notifyDataAvailable(WsFrameServer.java:151) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:148) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39]
	at org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:54) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:59) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.39.jar:9.0.39]
	at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]

How to reproduce?

  • Checkout the project and run it

Expected & current behavior

Should not crash

(Optional) Possible solution

No idea

Info about your environment

I'm using a source installation of the latest Kurento Media Server in a VM on an Apple MBP, Apple silicon

About Kurento Media Server

image

About your Application Server

  • Programming Language:
  • Kurento Client version:

About end-user clients

  • Device(s): Apple MBP 2021, Apple Silicon
  • OS(es): macOS Monterey, 12.0.1
  • Browser(s): Version 96.0.4664.110 (Offizieller Build) (arm64)

Run these commands

cat /etc/lsb-release
kurento-media-server --version
dpkg -l | grep -Pi 'kurento|kms-|gst.*1.5|nice'
@github-actions
Copy link

Hello @neilyoung! 👋 we're sorry you found a bug... so first of all, thank you very much for reporting it.

To know about progress, check in Triage. All issues are considered Backlog Candidates until work priorities align and the issue is selected for development. It will then become part of our official Backlog.

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

No branches or pull requests

1 participant