Dear Technical Support Team,
I could observe a behavior of Axon Ivy Axon.ivy Engine 8.0.8.2008031433 that per each Rest resource call it creates I/O dispatcher threads to handle the request. Seem like it never finishes the threads leads to running out of thread limit when making multi-thousand requests.
Do you have any suggestions to solve the issue?
Bellow is the thread dump:
"I/O dispatcher 6" - Thread t@117
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.EPoll.wait(Native Method)
at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:120)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
- locked <7852c352> (a sun.nio.ch.Util$2)
- locked <1c87a554> (a sun.nio.ch.EPollSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:255)
at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:588)
at java.lang.Thread.run(Thread.java:829)
Locked ownable synchronizers:
- None
"pool-16-thread-1" - Thread t@118
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.EPoll.wait(Native Method)
at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:120)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
- locked <21f56659> (a sun.nio.ch.Util$2)
- locked <732e9d1a> (a sun.nio.ch.EPollSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:340)
at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager.execute(PoolingNHttpClientConnectionManager.java:221)
at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase$1.run(CloseableHttpAsyncClientBase.java:64)
at java.lang.Thread.run(Thread.java:829)
Locked ownable synchronizers:
- None
"I/O dispatcher 7" - Thread t@119
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.EPoll.wait(Native Method)
at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:120)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
- locked <1d88987e> (a sun.nio.ch.Util$2)
- locked <3c84339e> (a sun.nio.ch.EPollSelectorImpl)
at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:255)
at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:588)
at java.lang.Thread.run(Thread.java:829)
Locked ownable synchronizers:
- None
Kind Regards,