Time out Expired

0
Hi Experts,   How to resolve this below error ?   2023-06-12 10:36:08.462 ERROR - Connector: An error has occurred while handling the request.   2023-06-12 10:36:08.462 ERROR - Connector: java.io.IOException: java.util.concurrent.TimeoutException: Idle timeout expired: 30001/30000 ms   at org.eclipse.jetty.util.SharedBlockingCallback$Blocker.block(SharedBlockingCallback.java:221)   at org.eclipse.jetty.server.HttpOutput.channelWrite(HttpOutput.java:254)   at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:857)   at java.base/sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:233)   at java.base/sun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:303)   at java.base/sun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:281)   at java.base/sun.nio.cs.StreamEncoder.write(StreamEncoder.java:125)   at java.base/java.io.OutputStreamWriter.write(OutputStreamWriter.java:208)   at com.fasterxml.jackson.core.json.WriterBasedJsonGenerator._flushBuffer(WriterBasedJsonGenerator.java:2023)   at com.fasterxml.jackson.core.json.WriterBasedJsonGenerator._writeString(WriterBasedJsonGenerator.java:1051)   at com.fasterxml.jackson.core.json.WriterBasedJsonGenerator._writeFieldName(WriterBasedJsonGenerator.java:185)   at com.fasterxml.jackson.core.json.WriterBasedJsonGenerator.writeFieldName(WriterBasedJsonGenerator.java:150)   at com.mendix.webui.jsonserialization.JsonGeneratorWrapper.$anonfun$writeFieldName$1(JsonGeneratorWrapper.scala:38)   at com.mendix.webui.jsonserialization.JsonGeneratorWrapper.$anonfun$writeFieldName$1$adapted(JsonGeneratorWrapper.scala:38)   at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:563)   at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:561)   at scala.collection.AbstractIterable.foreach(Iterable.scala:926)   at com.mendix.webui.jsonserialization.JsonGeneratorWrapper.writeFieldName(JsonGeneratorWrapper.scala:38)   at com.mendix.webui.jsonserialization.ResultSerializer.$anonfun$generateJsValue$1(ResultSerializer.scala:60)   at com.mendix.webui.jsonserialization.ResultSerializer.$anonfun$generateJsValue$1$adapted(ResultSerializer.scala:58)   at scala.collection.immutable.RedBlackTree$.foreach(RedBlackTree.scala:276)   at scala.collection.immutable.TreeMap.foreach(TreeMap.scala:195)   at com.mendix.webui.jsonserialization.ResultSerializer.generateJsValue(ResultSerializer.scala:58)   at com.mendix.webui.jsonserialization.ResultSerializer.$anonfun$generateJsValue$1(ResultSerializer.scala:61)   at com.mendix.webui.jsonserialization.ResultSerializer.$anonfun$generateJsValue$1$adapted(ResultSerializer.scala:58)   at scala.collection.immutable.BitmapIndexedMapNode.foreach(HashMap.scala:1076)   at scala.collection.immutable.HashMap.foreach(HashMap.scala:1083)   at com.mendix.webui.jsonserialization.ResultSerializer.generateJsValue(ResultSerializer.scala:58)   at com.mendix.webui.jsonserialization.ResultSerializer.$anonfun$generateJsValue$1(ResultSerializer.scala:61)   at com.mendix.webui.jsonserialization.ResultSerializer.$anonfun$generateJsValue$1$adapted(ResultSerializer.scala:58)   at scala.collection.immutable.RedBlackTree$._foreach(RedBlackTree.scala:276)   at scala.collection.immutable.RedBlackTree$._foreach(RedBlackTree.scala:275)   at scala.collection.immutable.RedBlackTree$.foreach(RedBlackTree.scala:275)   at scala.collection.immutable.TreeMap.foreach(TreeMap.scala:195)   at com.mendix.webui.jsonserialization.ResultSerializer.generateJsValue(ResultSerializer.scala:58)   at com.mendix.webui.jsonserialization.ResultSerializer.$anonfun$generateJsValue$2(ResultSerializer.scala:66)   at com.mendix.webui.jsonserialization.ResultSerializer.$anonfun$generateJsValue$2$adapted(ResultSerializer.scala:66)   at scala.collection.immutable.Vector.foreach(Vector.scala:1856)   at com.mendix.webui.jsonserialization.ResultSerializer.generateJsValue(ResultSerializer.scala:66)   at com.mendix.webui.jsonserialization.ResultSerializer.$anonfun$generateJsResult$2(ResultSerializer.scala:31)   at com.mendix.webui.jsonserialization.ResultSerializer.$anonfun$generateJsResult$2$adapted(ResultSerializer.scala:29)   at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:563)   at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:561)   at scala.collection.AbstractIterable.foreach(Iterable.scala:926)   at scala.collection.IterableOps$WithFilter.foreach(Iterable.scala:896)   at com.mendix.webui.jsonserialization.ResultSerializer.generateJsResult(ResultSerializer.scala:29)   at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$2(RegularClientAction.scala:130)   at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$2$adapted(RegularClientAction.scala:118)   at com.mendix.webui.requesthandling.helpers.ContextHandling.$anonfun$inContext$5(ContextHandling.scala:57)   at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)   at com.mendix.basis.actionmanagement.ActionMonitoring$.$anonfun$monitor$1(ActionMonitoring.scala:49)   at com.mendix.util.classloading.Runner$.withContextClassLoader(Runner.scala:20)   at com.mendix.basis.actionmanagement.ActionMonitoring$.monitor(ActionMonitoring.scala:49)   at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext(ContextHandling.scala:57)   at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext$(ContextHandling.scala:31)   at com.mendix.webui.actions.client.RegularClientAction.inContext(RegularClientAction.scala:94)   at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext(ContextHandling.scala:28)   at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext$(ContextHandling.scala:20)   at com.mendix.webui.actions.client.RegularClientAction.inContext(RegularClientAction.scala:94)   at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$1(RegularClientAction.scala:118)   at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)   at com.mendix.webui.requesthandling.helpers.ProfileHandling.profileRequest(ProfileHandling.scala:14)   at com.mendix.webui.requesthandling.helpers.ProfileHandling.profileRequest$(ProfileHandling.scala:10)   at com.mendix.webui.actions.client.RegularClientAction.profileRequest(RegularClientAction.scala:94)   at com.mendix.webui.actions.client.RegularClientAction.execute(RegularClientAction.scala:115)   at com.mendix.webui.requesthandling.ClientRequestHandler.handleAction(ClientRequestHandler.scala:106)   at com.mendix.webui.requesthandling.ClientRequestHandler.processRequest(ClientRequestHandler.scala:79)   at com.mendix.externalinterface.connector.RequestHandler.doProcessRequest(RequestHandler.java:37)   at com.mendix.external.connector.MxRuntimeConnector.$anonfun$processRequest$1(MxRuntimeConnector.scala:50)   at com.mendix.external.connector.MxRuntimeConnector.$anonfun$processRequest$1$adapted(MxRuntimeConnector.scala:50)   at com.mendix.util.classloading.Runner$.withContextClassLoader(Runner.scala:20)   at com.mendix.external.connector.MxRuntimeConnector.processRequest(MxRuntimeConnector.scala:50)   at com.mendix.basis.impl.MxRuntimeImpl.processRequest(MxRuntimeImpl.scala:232)   at com.mendix.m2ee.appcontainer.server.handler.RuntimeServlet.service(RuntimeServlet.scala:32)   at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)   at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:764)   at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1630)   at org.eclipse.jetty.websocket.servlet.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:170)   at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:202)   at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1600)   at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:506)   at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:221)   at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1571)   at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:221)   at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1378)   at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:176)   at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:463)   at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1544)   at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:174)   at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1300)   at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:129)   at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)   at org.eclipse.jetty.server.Server.handle(Server.java:562)   at org.eclipse.jetty.server.HttpChannel.lambda$handle$0(HttpChannel.java:505)   at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:762)   at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:497)   at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:282)   at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:319)   at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100)   at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)   at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:412)   at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:381)   at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:268)   at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.lambda$new$0(AdaptiveExecutionStrategy.java:138)   at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:407)   at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:894)   at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1038)   at java.base/java.lang.Thread.run(Thread.java:829)   Caused by: java.util.concurrent.TimeoutException: Idle timeout expired: 30001/30000 ms   at org.eclipse.jetty.io.IdleTimeout.checkIdleTimeout(IdleTimeout.java:166)   at org.eclipse.jetty.io.IdleTimeout.idleCheck(IdleTimeout.java:108)   at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)   at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)   at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)   at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)   at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)   at java.base/java.lang.Thread.run(Thread.java:829)   Thanks, Rasik.N
asked
4 answers
0

Hi Rasik,

You can define after how much time the session becomes invalid (in milliseconds) in “SessionTimeout”

 

Refer the below documentation 

https://docs.mendix.com/refguide/tricky-custom-runtime-settings/#general-settings

 

or 

 

if you want to perform some operation on timeout

you can use “Session Timeout” module

https://marketplace.mendix.com/link/component/113622

 

Hope it helps!!!

answered
0

Like Bharathi mentions, you can change the time out, but an API taking more than 30000 ms is probably the real issue.

answered
0

Hi Experts,

 

Is there is any solution ?

 

Thanks,

Rasik.N

answered
0

Hi Rasik,

 

As other describe, the REST protocol doesn't define a maximum session timeout, but in general limits between 30 seconds and 5 minutes are applied.

Do you know why ‘the other side’ is taking so long?

Next to solving that, I would suggest you should be able to deal with time-outs by implementing error handling.

 

Good luck!

answered