Hi, Yes of course. The reason behind my concern is all these blocks seems to be occurred in EPoll related operations and there are quite a lot of these blocks. I'm worried about this has a impact on the performance of the application. Is there any configuration parameter to switch off this EPoll usage in order to perform a round of testing without it. Thanks
Regards, Sudheera. On Thu, Feb 2, 2017 at 5:36 PM, Oleg Kalnichevski <[email protected]> wrote: > On February 2, 2017 7:05:07 AM GMT+01:00, Sudheera Palihakkara < > [email protected]> wrote: > >Hi all, > > > >I'm currently using httpcore-nio 4.4 for a proxy-like application and > >make > >use of the file channels when content transferring. Recently I have > >profiled my code under a high concurrent load and observed few unusual > >thread blocking occurrences. Stack traces are listed below. > > > >*I/O threads* > > > >S-I/O-dispatcher-1 [BLOCKED] > >sun.nio.ch.EPollSelectorImpl.doSelect(long) EPollSelectorImpl.java:88 > >java.lang.Thread.run() Thread.java:745 > > > >S-I/O-dispatcher-5 [BLOCKED] > >org.apache.http.impl.nio.reactor.IOSessionImpl.setEvent(int) > >IOSessionImpl.java:164 > >org.apache.http.impl.nio.DefaultNHttpClientConnection. > submitRequest(HttpRequest) > >DefaultNHttpClientConnection.java:339 > > > >*Worker threds* > > > >pool-2-thread-99 [BLOCKED] > >sun.nio.ch.EPollArrayWrapper.setInterest(int, int) > >EPollArrayWrapper.java:213 > >org.apache.http.nio.protocol.HttpAsyncService$HttpAsyncExchangeImpl. > submitResponse(HttpAsyncResponseProducer) > >HttpAsyncService.java:1037 > > > >pool-2-thread-96 [BLOCKED] > >sun.nio.ch.EPollSelectorImpl.wakeup() EPollSelectorImpl.java:191 > >org.apache.http.nio.protocol.HttpAsyncService$HttpAsyncExchangeImpl. > submitResponse(HttpAsyncResponseProducer) > >HttpAsyncService.java:1037 > > > >Previously I have used httpcore-nio 4.2.5 for the same application and > >did > >not encountered any such thread blockings. Can you help me out to > >figure > >out what might be the issue here? Thank you very much. > > Synchronized sections of code can cause threads to block on the > synchronization object under load. This does not necessarily mean there is > a problem. > > Oleg > -- > Sent from my Android device with K-9 Mail. Please excuse my brevity. > -- *Sudheera Palihakkara.* Undergraduate Department of *Computer Science and Engineering,*Faculty of Engineering, *University of Moratuwa*, Sri Lanka.
