ant-media / Ant-Media-Server

Ant Media Server is a live streaming engine software that provides adaptive, ultra low latency streaming by using WebRTC technology with ~0.5 seconds latency. Ant Media Server is auto-scalable and it can run on-premise or on-cloud.
https://antmedia.io
Other
4.27k stars 628 forks source link

AMS 2.0 Snapshot Bug Report #2047

Closed SelimEmre closed 4 years ago

SelimEmre commented 4 years ago
2020-04-14 16:31:11,123 [http-nio2-0.0.0.0-5080-exec-4] ERROR o.a.c.c.C.[.[.0.0.0.[.[jersey-serlvet] - Servlet.service() for servlet [jersey-serlvet] in context with path [/LiveApp] threw exception [java.lang.IndexOutOfBoundsException: Index: 1, Size: 1] with root cause
java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
    at java.util.ArrayList.rangeCheck(ArrayList.java:657)
    at java.util.ArrayList.get(ArrayList.java:433)
    at java.util.Collections$SynchronizedList.get(Collections.java:2419)
    at org.mapdb.WriteAheadLog.walGetRecord(WriteAheadLog.java:863)
    at org.mapdb.StoreWAL.get(StoreWAL.kt:522)
    at org.mapdb.BTreeMap.getNode(BTreeMap.kt:800)
    at org.mapdb.BTreeMap.access$getNode(BTreeMap.kt:72)
    at org.mapdb.BTreeMap$BTreeIterator.advanceFrom(BTreeMap.kt:1031)
    at org.mapdb.BTreeMap$BTreeIterator.<init>(BTreeMap.kt:1016)
    at org.mapdb.BTreeMap$valueIterator$1.<init>(BTreeMap.kt:1223)
    at org.mapdb.BTreeMap.valueIterator(BTreeMap.kt:1223)
    at org.mapdb.BTreeMap$values$1.iterator(BTreeMap.kt:999)
    at io.antmedia.datastore.db.MapDBStore.getBroadcastList(MapDBStore.java:350)
    at io.antmedia.rest.BroadcastRestService.getBroadcastList(BroadcastRestService.java:237)
    at sun.reflect.GeneratedMethodAccessor120.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:76)
    at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:148)
    at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:191)
    at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:243)
    at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:103)
    at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:493)
    at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:415)
    at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:104)
    at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:277)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:272)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:268)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:316)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:298)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:268)
    at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:289)
    at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:256)
    at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:703)
    at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:416)
    at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:370)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:389)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:342)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:229)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.catalina.filters.ExpiresFilter.doFilter(ExpiresFilter.java:1232)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at io.antmedia.filter.IPFilter.doFilter(IPFilter.java:24)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.red5.logging.LoggerContextFilter.doFilter(LoggerContextFilter.java:84)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:364)
    at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:170)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:493)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:800)
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:806)
    at org.apache.tomcat.util.net.Nio2Endpoint$SocketProcessor.doRun(Nio2Endpoint.java:1682)
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:748)
2020-04-14 16:31:15,788 [http-nio2-0.0.0.0-5080-exec-5] ERROR o.a.c.c.C.[.[.0.0.0.[.[jersey-serlvet] - Servlet.service() for servlet [jersey-serlvet] in context with path [/LiveApp] threw exception [java.lang.IndexOutOfBoundsException: Index: 1, Size: 1] with root cause
java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
    at java.util.ArrayList.rangeCheck(ArrayList.java:657)
    at java.util.ArrayList.get(ArrayList.java:433)
    at java.util.Collections$SynchronizedList.get(Collections.java:2419)
    at org.mapdb.WriteAheadLog.walGetRecord(WriteAheadLog.java:863)
    at org.mapdb.StoreWAL.get(StoreWAL.kt:522)
    at org.mapdb.BTreeMap.getNode(BTreeMap.kt:800)
    at org.mapdb.BTreeMap.access$getNode(BTreeMap.kt:72)
    at org.mapdb.BTreeMap$BTreeIterator.advanceFrom(BTreeMap.kt:1031)
    at org.mapdb.BTreeMap$BTreeIterator.<init>(BTreeMap.kt:1016)
    at org.mapdb.BTreeMap$valueIterator$1.<init>(BTreeMap.kt:1223)
    at org.mapdb.BTreeMap.valueIterator(BTreeMap.kt:1223)
    at org.mapdb.BTreeMap$values$1.iterator(BTreeMap.kt:999)
    at io.antmedia.datastore.db.MapDBStore.getBroadcastList(MapDBStore.java:350)
    at io.antmedia.rest.BroadcastRestService.getBroadcastList(BroadcastRestService.java:237)
    at sun.reflect.GeneratedMethodAccessor120.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:76)
    at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:148)
    at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:191)
    at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$TypeOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:243)
    at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:103)
    at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:493)
    at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:415)
    at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:104)
    at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:277)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:272)
    at org.glassfish.jersey.internal.Errors$1.call(Errors.java:268)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:316)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:298)
    at org.glassfish.jersey.internal.Errors.process(Errors.java:268)
    at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:289)
    at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:256)
    at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:703)
    at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:416)
    at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:370)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:389)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:342)
    at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:229)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.catalina.filters.ExpiresFilter.doFilter(ExpiresFilter.java:1232)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at io.antmedia.filter.IPFilter.doFilter(IPFilter.java:24)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.red5.logging.LoggerContextFilter.doFilter(LoggerContextFilter.java:84)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:364)
    at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:170)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:493)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
    at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:800)
    at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:806)
    at org.apache.tomcat.util.net.Nio2Endpoint$SocketProcessor.doRun(Nio2Endpoint.java:1682)
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
    at org.apache.tomcat.util.net.AbstractEndpoint.processSocket(AbstractEndpoint.java:1051)
    at org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$4.completed(Nio2Endpoint.java:594)
    at org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$4.completed(Nio2Endpoint.java:572)
    at sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:126)
    at sun.nio.ch.Invoker$2.run(Invoker.java:218)
    at sun.nio.ch.AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:112)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Thread.java:748)
2020-04-14 16:31:20,020 [vert.x-eventloop-thread-1] INFO  i.a.s.StreamFetcherManager - Stream is not alive and setting quality to poor of stream: 921616485984173239747191 url: rtsp://xxx:xxx@xx.xx.xx.xx:12000/cam/realmonitor?channel=9?subtype=0
2020-04-14 16:31:20,022 [vert.x-eventloop-thread-1] ERROR io.vertx.core.impl.ContextImpl - Unhandled exception
java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
    at java.util.ArrayList.rangeCheck(ArrayList.java:657)
    at java.util.ArrayList.get(ArrayList.java:433)
    at java.util.Collections$SynchronizedList.get(Collections.java:2419)
    at org.mapdb.WriteAheadLog.walGetRecord(WriteAheadLog.java:863)
    at org.mapdb.StoreWAL.get(StoreWAL.kt:522)
    at org.mapdb.BTreeMap.getNode(BTreeMap.kt:800)
    at org.mapdb.BTreeMap.getNonBinary(BTreeMap.kt:271)
    at org.mapdb.BTreeMap.get(BTreeMap.kt:235)
    at io.antmedia.datastore.db.MapDBStore.updateSourceQualityParametersLocal(MapDBStore.java:599)
    at io.antmedia.datastore.db.DataStore.updateSourceQualityParameters(DataStore.java:50)
    at io.antmedia.streamsource.StreamFetcherManager.checkStreamFetchersStatus(StreamFetcherManager.java:381)
    at io.antmedia.streamsource.StreamFetcherManager.lambda$scheduleStreamFetcherJob$1(StreamFetcherManager.java:365)
    at io.vertx.core.impl.VertxImpl$InternalTimerHandler.handle(VertxImpl.java:885)
    at io.vertx.core.impl.VertxImpl$InternalTimerHandler.handle(VertxImpl.java:844)
    at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:339)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:886)
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    at java.lang.Thread.run(Thread.java:748)
2020-04-14 16:31:20,283 [vert.x-eventloop-thread-3] INFO  i.a.s.StreamFetcherManager - Stream is not alive and setting quality to poor of stream: 328370076249009624632534 url: rtsp://xxx:xxx@xx.xx.xx.xx:12000/cam/realmonitor?channel=6?subtype=0
2020-04-14 16:31:20,285 [vert.x-eventloop-thread-3] ERROR io.vertx.core.impl.ContextImpl - Unhandled exception
java.lang.IndexOutOfBoundsException: Index: 4, Size: 1
    at java.util.ArrayList.rangeCheck(ArrayList.java:657)
    at java.util.ArrayList.get(ArrayList.java:433)
    at java.util.Collections$SynchronizedList.get(Collections.java:2419)
    at org.mapdb.WriteAheadLog.walGetRecord(WriteAheadLog.java:863)
    at org.mapdb.StoreWAL.get(StoreWAL.kt:522)
    at org.mapdb.BTreeMap.getNode(BTreeMap.kt:800)
    at org.mapdb.BTreeMap.getNonBinary(BTreeMap.kt:271)
    at org.mapdb.BTreeMap.get(BTreeMap.kt:235)
    at io.antmedia.datastore.db.MapDBStore.updateSourceQualityParametersLocal(MapDBStore.java:599)
    at io.antmedia.datastore.db.DataStore.updateSourceQualityParameters(DataStore.java:50)
    at io.antmedia.streamsource.StreamFetcherManager.checkStreamFetchersStatus(StreamFetcherManager.java:381)
    at io.antmedia.streamsource.StreamFetcherManager.lambda$scheduleStreamFetcherJob$1(StreamFetcherManager.java:365)
    at io.vertx.core.impl.VertxImpl$InternalTimerHandler.handle(VertxImpl.java:885)
    at io.vertx.core.impl.VertxImpl$InternalTimerHandler.handle(VertxImpl.java:844)
    at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:339)
    at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:463)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:886)
    at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    at java.lang.Thread.run(Thread.java:748)
mekya commented 4 years ago

Do you have a reproduce the scenario?

mekya commented 4 years ago

Closing this issue. Because it's not seen in 2.0 for a while. Please re-open if it happens again