Recording failed after upgrade to OV 2.16

Good morning,

The record not started correctly and i cant figure why. I need help please.

OPENVIDU LOGS:

openvidu-server_1 | [INFO] 2020-11-24 22:00:18,623 [http-nio-0.0.0.0-5443-exec-3] io.openvidu.server.rest.SessionRestController - REST API: POST /openvidu/api/sessions {customSessionId=Sala46361, recordingMode=ALWAYS, defaultOutputMode=COMPOSED, defaultRecordingLayout=CUSTOM, defaultCustomLayout=conf/}
openvidu-server_1 | [INFO] 2020-11-24 22:04:43,684 [Thread-8] io.openvidu.server.recording.service.RecordingService - New recording id (Sala46361) and final name (Sala46361)
openvidu-server_1 | [INFO] 2020-11-24 22:04:43,684 [Thread-8] io.openvidu.server.recording.service.ComposedRecordingService - Starting composed (video + audio) recording Sala46361 of session Sala46361
openvidu-server_1 | [INFO] 2020-11-24 22:04:43,684 [Thread-8] io.openvidu.server.recording.service.ComposedRecordingService - {“id”:“Sala46361”,“object”:“recording”,“name”:“Sala46361”,“outputMode”:“COMPOSED”,“resolution”:“1920x1080”,“recordingLayout”:“CUSTOM”,“customLayout”:“conf/”,“sessionId”:“Sala46361”,“createdAt”:1606255483684,“size”:0,“duration”:0.0,“url”:null,“hasAudio”:true,“hasVideo”:true,“status”:“started”}
openvidu-server_1 | [INFO] 2020-11-24 22:04:43,684 [Thread-8] io.openvidu.server.recording.service.ComposedRecordingService - Recorder connecting to url https://OPENVIDUAPP:SECRET@site.com/openvidu/layouts/conf/index.html?sessionId=Sala46361&secret=SECRET
openvidu-server_1 | [ERROR] 2020-11-24 22:04:58,975 [Thread-8] io.openvidu.server.recording.service.ComposedRecordingService - Recorder container failed generating video file (is empty) for session Sala46361
openvidu-server_1 | [ERROR] 2020-11-24 22:04:58,976 [Thread-8] io.openvidu.server.recording.service.RecordingService - Recording start failed for session Sala46361: Couldn’t initialize recording container. Error: Recorder container failed generating video file (is empty). Code: 703
openvidu-server_1 | [INFO] 2020-11-24 22:04:59,001 [Thread-8] io.openvidu.server.recording.service.RecordingService - Sealed recording metadata file at /opt/openvidu/recordings/ToProcess/Sala46361/.recording.Sala46361 with status [failed]
openvidu-server_1 | [INFO] 2020-11-24 22:04:59,001 [Thread-8] io.openvidu.server.recording.service.ComposedRecordingService - Stopping composed (video + audio) recording Sala46361 of session Sala46361. Reason: null

.recording.Sala46361 log
{“id”:“Sala46361”,“object”:“recording”,“name”:“Sala46361”,“outputMode”:“COMPOSED”,“resolution”:“1920x1080”,“recordingLayout”:“CUSTOM”,“customLayout”:“conf/”,“sessionId”:“Sala46361”,“createdAt”:1606255483684,“size”:0,“duration”:0.0,“url”:“https://site.com/openvidu/recordings/Sala46361/Sala46361.mp4",“hasAudio”:true,“hasVideo”:true,“status”:"failed”}

Sala46361-container.log
==== Loaded Environment Variables =======================
VIDEO_ID=Sala46361
DEBUG_MODE=true
HOSTNAME=ip-172-31-45-114
VIDEO_NAME=Sala46361
PWD=/
VIDEO_FORMAT=mp4
HOME=/root
URL=https://OPENVIDUAPP:SECRET@site.com/openvidu/layouts/conf/index.html?sessionId=Sala46361&secret=SECRET
RESOLUTION=1920x1080
SHLVL=2
ONLY_VIDEO=false
RECORDING_JSON={“id”:“Sala46361”,“object”:“recording”,“name”:“Sala46361”,“outputMode”:“COMPOSED”,“resolution”:“1920x1080”,“recordingLayout”:“CUSTOM”,“customLayout”:“conf/”,“sessionId”:“Sala46361”,“createdAt”:1606255483684,“size”:0,“duration”:0.0,“url”:null,“hasAudio”:true,“hasVideo”:true,“status”:“started”}
WIDTH=1920
FRAMERATE=30
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HEIGHT=1080
_=/usr/bin/env
W: [pulseaudio] main.c: This program is not intended to be run as root (unless --system is specified).
Display in use -> :
ffmpeg version 4.2.4-1ubuntu0.1 Copyright © 2000-2020 the FFmpeg developers
built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)
configuration: --prefix=/usr --extra-version=1ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
libavutil 56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat 58. 29.100 / 58. 29.100
libavdevice 58. 8.100 / 58. 8.100
libavfilter 7. 57.100 / 7. 57.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 5.100 / 5. 5.100
libswresample 3. 5.100 / 3. 5.100
libpostproc 55. 5.100 / 55. 5.100
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, alsa, from ‘pulse’:
Duration: N/A, start: 1606255486.085879, bitrate: 1536 kb/s
Stream #0:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
[x11grab @ 0x55cb2fd95e40] Cannot open display :, error 5.
:: Input/output error
jq: error (at :1): Cannot iterate over null (null)
jq: error (at :1): Cannot iterate over null (null)
jq: error (at :1): null (null) cannot be parsed as a number
jq: error (at :1): null (null) cannot be parsed as a number
jq: error: syntax error, unexpected ‘|’ (Unix shell quoting issues?) at , line 1:
.hasAudio=false | .hasVideo=false | .duration= | .size= | .status=“failed”
jq: 1 compile error
ffmpeg version 4.2.4-1ubuntu0.1 Copyright © 2000-2020 the FFmpeg developers
built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)
configuration: --prefix=/usr --extra-version=1ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
libavutil 56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat 58. 29.100 / 58. 29.100
libavdevice 58. 8.100 / 58. 8.100
libavfilter 7. 57.100 / 7. 57.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 5.100 / 5. 5.100
libswresample 3. 5.100 / 3. 5.100
libpostproc 55. 5.100 / 55. 5.100
Invalid duration specification for ss: -i

CPU usage is very low.

Thanks in advance.

This happened several times today… if i start 6 or 7 recordings nearly at same time, one or two of them fail. This reminds me of the behavior of some previous versions, which had been solved, as in this issue I opened in the past: https://github.com/OpenVidu/openvidu/issues/433

2.16 change log says: “* Fixed rare exception when starting and stopping multiple recordings for the same session in a row.” But i think that this new problem, who i commented above, is much more frequent than the old one i have opened in github (I thought the change log fix was referring to him): https://github.com/OpenVidu/openvidu/issues/537

Hello @Thiago_Henrique

Taking a look into your container debug log I think you’re experiencing a concurrency error (at process level) when a lot of recordings starts at the same time, but it is not related with the issue you link.

I think what is happening is that the process xvfb-run is not getting the correct DISPLAY number when other xfvb-run processes run at the same time (the other containers which run the same command).

I need to take I deep look into this bug. I’ll try to replicate it. When you experience this error more? Is this only happening while running containers at the same time?

Please create a bug in openvidu repository to take into account.

Regards,
Carlos.

Hello @cruizba

I experienced it when I upgraded the server to 2.16. I noticed that several recordings failed, because of that I ended up using this version very little. But yes, our problem only occurs when we start more than one at the same time.

When I return to version 2.15 the only recording problem I currently have is when I start two or more recordings simultaneously and they have the same timestamp in “createdAt” in the .recording file.

Version 2.16 has a lot more recording problems than 2.15, in our tests, in this sense. In version 2.15 this condition is more rare, in 2.16 it is common. While in 2.15 it is necessary to appear the same timestamp to fail, in 2.16 even with different timestamps the failure occurs, recording does not need to start simultaneously to fail, it fails even with a short interval…

Anyway, it is possible to reproduce the difficulties in these two versions using the script below.

I appreciate it if you can help us find a way to fix this.

test_recording_openvidu.py

"""
    Script for testing the "multiple recording start" problem in openvidu.
"""
import requests
import time
from threading import Thread
from requests.auth import HTTPBasicAuth

openvidu_server_url = "https://openviduurl.com"
authorization = HTTPBasicAuth("OPENVIDUAPP", "MY_SECRET")


def start_rec(session):
    print("Recording: ", session)
    
    body = {
        "session": session,
        "outputMode": "COMPOSED",
        "recordingLayout": "CUSTOM",
        "customLayout": "conf/",
        "resolution": "800x480"
    }

    response = requests.post(
        url = openvidu_server_url + "/api/recordings/start",
        json=body,
        auth=authorization
    )

    
    print(f"Recording: {session} - ", response.status_code)
    if(response.status_code == 200):
        print(f"Recording: {session} - ", response.json())
    else:
        print(f"Recording: {session} - ", response.content)


def stop_rec(session):
    print("Stop recording: ", session)
    response = requests.post(
        url = openvidu_server_url + "/api/recordings/stop/" + session,
        auth=authorization
    )
    print(f"Stop recording: {session} - ", response.status_code)
    if(response.status_code == 200):
        print(f"Stop recording: {session} - ", response.json())
    else:
        print(f"Stop recording: {session} - ", response.content)

sessions = ["Session1", "Session2", "Session3", "Session4"]
start_threads = []
stop_threads = []

for session in sessions:
    start = Thread(target=start_rec, args=[session,])
    #start_threads.append(start)
    
    stop = Thread(target=stop_rec, args=[session,])
    stop_threads.append(stop)

for t in start_threads:
    t.start()

time.sleep(30)

for t in stop_threads:
    t.start()

@Thiago_Henrique Thank you very much for your time. We will try to replicate and find the issue to fix it.

If we create a beta docker container with the fix, would you try it?

Regards,
Carlos

1 Like

Hi @cruizba , even we are facing the same issue.

Let us know what we can do to avoid this.
Give us the fix as well.

Hi. I have tried to replicate this possible issue, but I’m unable to do so. Let me explain the steps I’ve performed:

  1. Launch OpenVidu with the official dev container, with recording enabled:
docker run -p 4443:4443 --rm -e OPENVIDU_RECORDING=true -e OPENVIDU_RECORDING_PATH=/opt/openvidu/recordings -v /var/run/docker.sock:/var/run/docker.sock -v /opt/openvidu/recordings:/opt/openvidu/recordings openvidu/openvidu-server-kms:2.16.0
  1. With any sample application, initialize 5 sessions called [“TestSession1”, “TestSession2”, “TestSession3”, “TestSession4”, “TestSession5”]. Publish a single stream to each session.

  2. Run this simple bash script:

#!/bin/sh
for x in $(seq 1 5);
do
    curl -o /dev/null -s -w "%{http_code}\n" -u OPENVIDUAPP:MY_SECRET -k -H "Content-Type: application/json" --request POST --data '{"session":"TestSession'$x'"}' https://localhost:4443/openvidu/api/recordings/start &
done
wait

I think this is pretty much the same scenario as yours @Thiago_Henrique . Could you try this and see if you get the same beahvior as before?

Regards.

Hello @Thiago_Henrique @deepak_hegde

We’ve intesively researched this issue and we think we figured out a solution.

When various processes of xvfb-run are launched at the same time, there is a race condition trying to discover a free display to successfully run the chrome browser which does the recording. This commit should solve your problem: openvidu: Safer way to run xvfb in openvidu-recording to fix concurre… · OpenVidu/openvidu@2d74acb · GitHub

We’ve created a docker image with this change: openvidu/openvidu-recording:2.17.0-beta2

To test it you just need to add or change this variable in /opt/openvidu/.env file:

OPENVIDU_RECORDING_VERSION=2.17.0-beta2

Regards,
Carlos

1 Like

Hello, @cruizba

I’ve done testing now, and i think it’s solved!

I’ve started 5 recordings at same time, this results in 3 and 2 equal timestamps, and the recordings are fine, with audio/video and withouth black screen.

In the past these equal timestamp always result in black screen and audio of wrong session.

Thank you very much!

Regards

1 Like

Nice!, please if the error persist, post it here :slight_smile:

Hi,

The ghost session issue with 0 users in it and automatically stopping of recording issue got solved with this fix.
Thank you
But we are facing blank video recording issue for 2 recordings (out of 800 recordings).
Kindly suggest us here.

Hello @cruizba ,

After load the new docker image, im facing that error when in OV when accessing recording api:

openvidu-server_1 | [INFO] 2021-02-23 12:13:32,767 [http-nio-0.0.0.0-5443-exec-2] io.openvidu.server.rest.SessionRestController - REST API: GET /api/recordings
openvidu-server_1 | [ERROR] 2021-02-23 12:13:38,199 [http-nio-0.0.0.0-5443-exec-2] org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/].[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is java.lang.IllegalStateException: Not a JSON Object: null] with root cause
openvidu-server_1 | java.lang.IllegalStateException: Not a JSON Object: null
openvidu-server_1 | at com.google.gson.JsonElement.getAsJsonObject(JsonElement.java:91)
openvidu-server_1 | at io.openvidu.server.utils.JsonUtils.fromFileToJsonObject(JsonUtils.java:49)
openvidu-server_1 | at io.openvidu.server.recording.service.RecordingManager.getRecordingFromEntityFile(RecordingManager.java:497)
openvidu-server_1 | at io.openvidu.server.recording.service.RecordingManager.getAllRecordingsFromHost(RecordingManager.java:643)
openvidu-server_1 | at io.openvidu.server.recording.service.RecordingManager.getAllRecordings(RecordingManager.java:442)
openvidu-server_1 | at io.openvidu.server.rest.SessionRestController.getAllRecordings(SessionRestController.java:646)
openvidu-server_1 | at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
openvidu-server_1 | at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
openvidu-server_1 | at java.lang.reflect.Method.invoke(Method.java:498)
openvidu-server_1 | at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)
openvidu-server_1 | at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)
openvidu-server_1 | at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)
openvidu-server_1 | at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:888)
openvidu-server_1 | at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:793)
openvidu-server_1 | at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
openvidu-server_1 | at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
openvidu-server_1 | at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
openvidu-server_1 | at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
openvidu-server_1 | at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898)
openvidu-server_1 | at javax.servlet.http.HttpServlet.service(HttpServlet.java:634)
openvidu-server_1 | at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
openvidu-server_1 | at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
openvidu-server_1 | at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
openvidu-server_1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:113)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)
openvidu-server_1 | at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)
openvidu-server_1 | at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:118)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:158)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:203)
openvidu-server_1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:92)
openvidu-server_1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:92)
openvidu-server_1 | at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:77)
openvidu-server_1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56)
openvidu-server_1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)
openvidu-server_1 | at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
openvidu-server_1 | at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)
openvidu-server_1 | at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
openvidu-server_1 | at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
openvidu-server_1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
openvidu-server_1 | at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
openvidu-server_1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
openvidu-server_1 | at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
openvidu-server_1 | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
openvidu-server_1 | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
openvidu-server_1 | at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
openvidu-server_1 | at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
openvidu-server_1 | at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
openvidu-server_1 | at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
openvidu-server_1 | at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
openvidu-server_1 | at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
openvidu-server_1 | at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
openvidu-server_1 | at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:367)
openvidu-server_1 | at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
openvidu-server_1 | at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:860)
openvidu-server_1 | at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1598)
openvidu-server_1 | at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
openvidu-server_1 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
openvidu-server_1 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
openvidu-server_1 | at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
openvidu-server_1 | at java.lang.Thread.run(Thread.java:748)

@cruizba ,

Sorry after some investigation I think this is not related with new container image… but after OV restart, i think some nasty problem happened with cache in aws storage gateway, witch is pointed by OV. I’m trying to fix it on my own now.

Thank you anyway

Regards

Hi @Thiago_Henrique ,

Kindly let us know how did you able to solve the blank video issues?

Hi @deepak_hegde

I had blank video problems (white static screen in video) a long time ago, but if i remember well, its was related to CPU peak.

Do you have graphics of CPU use to check if its too high at the moment of the start of blank record?

Im using OV 2.15 here, are you using 2.16? Im planning upgrade to test.