rwth-acis / mobsos-success-modeling

This service is part of the MobSOS monitoring concept and provides visualization functionality of the monitored data to the Web-frontend.
Other
3 stars 0 forks source link

Success modeling service cannot use RMI to invoke qv service #25

Closed lakhoune closed 2 years ago

lakhoune commented 2 years ago

The Success modeling service cannot use RMI to invoke query visualization service. The following error is shown: Could not access the MobSOS QV Service: i5.las2peer.api.execution.ServiceNotAvailableException: Cannot reach service. The qv service is running

lakhoune commented 2 years ago

Stacktrace:

i5.las2peer.api.execution.ServiceNotAvailableException: Cannot reach service.
at i5.las2peer.p2p.Node.invoke(Node.java:1341)
at i5.las2peer.p2p.Node.invoke(Node.java:1275)
at i5.las2peer.execution.ExecutionContext.invokeWithAgent(ExecutionContext.java:155)
at i5.las2peer.execution.ExecutionContext.invoke(ExecutionContext.java:131)
at i5.las2peer.execution.ExecutionContext.invoke(ExecutionContext.java:123)
at i5.las2peer.services.mobsos.successModeling.queryVisualizationService.QVConnector.invokeMethodOnQVService(QVConnector.java:33)
at i5.las2peer.services.mobsos.successModeling.queryVisualizationService.QVConnector.getDatabaseKeys(QVConnector.java:29)
at i5.las2peer.services.mobsos.successModeling.MonitoringDataProvisionService.ensureMobSOSDatabaseIsAccessibleInQVService(MonitoringDataProvisionService.java:509)
at i5.las2peer.services.mobsos.successModeling.PrematchingRequestFilter.filter(PrematchingRequestFilter.java:29)
at org.glassfish.jersey.server.ContainerFilteringStage.apply(ContainerFilteringStage.java:108)
at org.glassfish.jersey.server.ContainerFilteringStage.apply(ContainerFilteringStage.java:44)
at org.glassfish.jersey.process.internal.Stages.process(Stages.java:173)
at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:247)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:234)
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:684)
at i5.las2peer.restMapper.RESTService.handle(RESTService.java:148)
at jdk.internal.reflect.GeneratedMethodAccessor153.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at i5.las2peer.execution.ServiceHelper.execute(ServiceHelper.java:139)
at i5.las2peer.security.ServiceAgentImpl.invoke(ServiceAgentImpl.java:453)
at i5.las2peer.security.ServiceAgentImpl.lambda$handle$0(ServiceAgentImpl.java:479)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1135)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:831)
Caused by: i5.las2peer.api.execution.ServiceNotAvailableException: Service does not respond
at i5.las2peer.p2p.Node.invokeGlobally(Node.java:1497)
at i5.las2peer.p2p.Node.invoke(Node.java:1336)
... 31 more
Caused by: i5.las2peer.p2p.TimeoutException: No answer received!
at i5.las2peer.p2p.Node.sendMessageAndWaitForAnswer(Node.java:1631)
at i5.las2peer.p2p.Node.invokeGlobally(Node.java:1442)
... 32 more
lakhoune commented 2 years ago

related to #24

lakhoune commented 2 years ago

It seems that this is related to a timeout when invoking the qv servaice

lakhoune commented 2 years ago

The issue seems to stem from a general overload of the network since it is only happening on certain requests while on others an answer is received in time. Furthermore the exception was not caught which led to the request not being handled