thrift-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (THRIFT-4251) Epoll Selector Bug
Date Thu, 07 Sep 2017 17:43:00 GMT

    [ https://issues.apache.org/jira/browse/THRIFT-4251?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16157313#comment-16157313
] 

ASF GitHub Bot commented on THRIFT-4251:
----------------------------------------

Github user jeking3 commented on the issue:

    https://github.com/apache/thrift/pull/1313
  
    I'd like additional feedback from folks who use Thrift with Java on this.  It seems like
the wrong place to fix the issue, but it sounds like many projects are implementing their
own fix for it.  I've never seen it happen.


> Epoll Selector Bug
> ------------------
>
>                 Key: THRIFT-4251
>                 URL: https://issues.apache.org/jira/browse/THRIFT-4251
>             Project: Thrift
>          Issue Type: Bug
>          Components: Java - Compiler, Java - Library
>    Affects Versions: 0.10.0
>         Environment: Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org)
> java version "1.8.0_131"
>            Reporter: JohnnyLiao
>              Labels: epoll, jdk, selector
>
> Thrift java unsolve the infamous epoll bug. It's consum 100% cpu resource when this occured.
It seems to affect any NIO based Java server applications running in the specified environment.
Some projects provide workarounds for similar JDK bugs, for example replaces the current Selector
of this SelectorThread.select with newly created Selector.
> Stack Traceļ¼š
> "Thread-46" #95 prio=5 os_prio=0 tid=0x00007fc79cd02800 nid=0xb1 runnable [0x00007fc580bd1000]
>    java.lang.Thread.State: RUNNABLE
>         at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
>         at sun.nio.ch.EPollArrayWrapper.poll(EPollArrayWrapper.java:269)
>         at sun.nio.ch.EPollSelectorImpl.doSelect(EPollSelectorImpl.java:93)
>         at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:86)
>         - locked <0x000000008012f748> (a sun.nio.ch.Util$3)
>         - locked <0x000000008012f738> (a java.util.Collections$UnmodifiableSet)
>         - locked <0x0000000080120f58> (a sun.nio.ch.EPollSelectorImpl)
>         at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:97)
>         at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:101)
>         at org.apache.thrift.server.TThreadedSelectorServer$SelectorThread.select(TThreadedSelectorServer.java:570)
>         at org.apache.thrift.server.TThreadedSelectorServer$SelectorThread.run(TThreadedSelectorServer.java:541)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message