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

PlayerEndpoint leaks 2 sockets on kurento media server #198

Closed
Indystef opened this issue Oct 12, 2017 · 4 comments
Closed

PlayerEndpoint leaks 2 sockets on kurento media server #198

Indystef opened this issue Oct 12, 2017 · 4 comments
Assignees

Comments

@Indystef
Copy link

KMS Version:
0:00:00.012170697 41 0x1ec9f00 INFO KurentoModuleManager ModuleManager.cpp:173:loadModules: Found module: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmselementsmodule.so
0:00:00.016009462 41 0x1ec9f00 DEBUG KurentoModuleManager ModuleManager.cpp:89:loadModule: Module loaded from /usr/lib/x86_64-linux-gnu/kurento/modules/libkmselementsmodule.so
0:00:00.016061609 41 0x1ec9f00 INFO KurentoModuleManager ModuleManager.cpp:135:loadModule: Loaded elements version 6.6.3 generated at Aug 11 2017 20:18:10
0:00:00.016127404 41 0x1ec9f00 INFO KurentoModuleManager ModuleManager.cpp:173:loadModules: Found module: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmscoremodule.so
0:00:00.016559369 41 0x1ec9f00 DEBUG KurentoModuleManager ModuleManager.cpp:89:loadModule: Module loaded from /usr/lib/x86_64-linux-gnu/kurento/modules/libkmscoremodule.so
0:00:00.016593861 41 0x1ec9f00 INFO KurentoModuleManager ModuleManager.cpp:135:loadModule: Loaded core version 6.6.3 generated at Aug 11 2017 19:36:36
0:00:00.016624217 41 0x1ec9f00 INFO KurentoModuleManager ModuleManager.cpp:173:loadModules: Found module: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmsfiltersmodule.so
0:00:00.017326839 41 0x1ec9f00 DEBUG KurentoModuleManager ModuleManager.cpp:89:loadModule: Module loaded from /usr/lib/x86_64-linux-gnu/kurento/modules/libkmsfiltersmodule.so
0:00:00.017360966 41 0x1ec9f00 INFO KurentoModuleManager ModuleManager.cpp:135:loadModule: Loaded filters version 6.6.2 generated at Jul 25 2017 13:36:15
Version: 6.6.2
Found modules:
Module: 'core' version '6.6.3'
Module: 'elements' version '6.6.3'
Module: 'filters' version '6.6.2'

Other libraries versions:
root@ed2206e9f637:/# dpkg -l | egrep -i "kurento|gst.*1.5|nice"
ii gstreamer1.5-libav:amd64 1.8.2.120160909143244.96.g493eee4.trusty amd64 libav plugin for GStreamer
ii gstreamer1.5-nice:amd64 0.1.13.1
20160930090742.81.geebfdab.trusty amd64 ICE library (GStreamer plugin)
ii gstreamer1.5-plugins-bad:amd64 1.8.1.120160909144557.99.gf836e53.trusty amd64 GStreamer plugins from the "bad" set
ii gstreamer1.5-plugins-base:amd64 1.8.1.1
20160909142623.55.g7b19cfd.trusty amd64 GStreamer plugins from the "base" set
ii gstreamer1.5-plugins-good:amd64 1.8.1.120160909143047.112.g9ee4248.trusty amd64 GStreamer plugins from the "good" set
ii gstreamer1.5-plugins-ugly:amd64 1.8.1.1
20160909192513.89.g2685b0f.trusty amd64 GStreamer plugins from the "ugly" set
ii gstreamer1.5-pulseaudio:amd64 1.8.1.120160909143047.112.g9ee4248.trusty amd64 GStreamer plugin for PulseAudio
ii gstreamer1.5-x:amd64 1.8.1.1
20160909142623.55.g7b19cfd.trusty amd64 GStreamer plugins for X11 and Pango
ii kms-core-6.0 6.6.3.trusty.20170811193010.2704d13 amd64 Kurento core module
ii kms-elements-6.0 6.6.3.trusty.20170811201004.9e3fff4 amd64 Kurento elements module
ii kms-filters-6.0 6.6.2.trusty.20170725133434.7b4c9ea amd64 Kurento filters module
ii kms-jsonrpc-1.0 1.1.3.trusty.20170725112926.ee575c6 amd64 Kurento jsonrpc library
ii kmsjsoncpp 1.6.3.trusty.20170725122830.d78deb7 amd64 Kurento jsoncpp library
ii kurento-media-server-6.0 6.6.2.trusty.20170725135150.8e7ceee amd64 Kurento Media Server
ii libgstreamer-plugins-bad1.5-0:amd64 1.8.1.120160909144557.99.gf836e53.trusty amd64 GStreamer development files for libraries from the "bad" set
ii libgstreamer-plugins-base1.5-0:amd64 1.8.1.1
20160909142623.55.g7b19cfd.trusty amd64 GStreamer libraries from the "base" set
ii libgstreamer1.5-0:amd64 1.8.1.120160909144007.170.g0d6031b.trusty amd64 Core GStreamer libraries and elements
ii libnice10:amd64 0.1.13.1
20160930090742.81.geebfdab.trusty amd64 ICE library (shared library)

Client libraries

  • Language: Java
  • Version: 6.6.3

Browsers tested

  • Chrome: 61.0.3163.100
  • Firefox: 56.0

System description:
Dev. platform is macOS Sierra.
kurento server runs in docker,

What steps will reproduce the problem?

  1. start kurento media server, for example in a docker container
  2. start the tutorial "Java - Recording" in kurento-tutorial-java/kurento-hello-world-recording
  3. observe the number of file descriptors: 'ls -l /proc/{PID of kurento media server}/fd | wc -l'. Also verify with 'ls -l /proc/{PID of kurento media server}/fd' that the FDs are mostly sockets
  4. do a recording. When finished observe the # of oped file descriptors. 3 & 4 can be repeated, but the number of FDs stays stable after each iteration
  5. do a playback. After the playback observe the FDs again. The number has increased by 2. Each time step 5 is repeated, the open FDs increase by 2 again

What is the expected result?
The expected result is that after a PlayerEndpoint got released on the client side, all sockets on the server side are closed.

What happens instead?
The number of file descriptors increases by 2 for every created PlayerEndpoint

Does it happen with one of the tutorials?
Yes

Please provide any additional information below.

@denis-ignatenko
Copy link

Can confirm same with PlayerEndpoint in case of only playing incoming video stream to webrtc. No Java. Kurento installed on CentOS 7.

Kurento Media Server version: 6.7.0-dev
Found modules:
'core' version 6.7.0-dev
'elements' version 6.7.0-dev
'filters' version 6.7.0-dev

@zhao85
Copy link

zhao85 commented Aug 3, 2019

same with the newest 6.11.0 release

@zhao85
Copy link

zhao85 commented Aug 24, 2019

I've made a pull request here Kurento/kms-elements#18.
After some stress testing with it, it's more stable now.

@j1elo j1elo self-assigned this Sep 9, 2019
@j1elo
Copy link
Member

j1elo commented Oct 14, 2019

This should be closed by Kurento/kms-elements#18

@j1elo j1elo closed this as completed Oct 14, 2019
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

4 participants