[Bugs] [Bug 1192114] edge-triggered epoll breaks rpc-throttling

bugzilla at redhat.com bugzilla at redhat.com
Mon Mar 2 06:50:11 UTC 2015


https://bugzilla.redhat.com/show_bug.cgi?id=1192114



--- Comment #14 from Anand Avati <aavati at redhat.com> ---
COMMIT: http://review.gluster.org/9726 committed in master by Raghavendra G
(rgowdapp at redhat.com) 
------
commit c48cbccfafbcf71aaad4ed7d868dbac609bc34fe
Author: Shyam <srangana at redhat.com>
Date:   Mon Feb 23 10:00:39 2015 -0500

    epoll: Fix broken RPC throttling due to MT epoll

    The RPC throttle which kicks in by setting the poll-in event on a
    socket to false, is broken with the MT epoll commit. This is due
    to the event handler of poll-in attempting to read as much out of
    the socket till it receives an EAGAIN. Which may never happen and
    hence we would be processing far more RPCs that we want to.

    This is being fixed by changing the epoll from ET to LT, and
    reading request by request, so that we honor the throttle.

    The downside is that we do not drain the socket, but go back to
    epoll_wait before reading the next request, but when kicking in
    throttle, we need to anyway and so a busy connection would degrade
    to LT anyway to maintain the throttle. As a result this change
    should not cause deviation in the performance much for busy
    connections.

    Change-Id: I522d284d2d0f40e1812ab4c1a453c8aec666464c
    BUG: 1192114
    Signed-off-by: Shyam <srangana at redhat.com>
    Reviewed-on: http://review.gluster.org/9726
    Tested-by: Gluster Build System <jenkins at build.gluster.com>
    Reviewed-by: Krishnan Parthasarathi <kparthas at redhat.com>
    Reviewed-by: Raghavendra G <rgowdapp at redhat.com>
    Tested-by: Raghavendra G <rgowdapp at redhat.com>

-- 
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=ZIC6wj7i0i&a=cc_unsubscribe


More information about the Bugs mailing list