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

ASF subversion and git services commented on GEODE-5922:
--------------------------------------------------------

Commit 7b7fed861903d9a9660e1f5b1c4d778d14f5eca5 in geode's branch 
refs/heads/feature/GEODE-5922 from [~bschuchardt]
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=7b7fed8 ]

GEODE-5922 SerialGatewaySenderQueue concurrency is poorly implemented

Replaced simple synchronization with a fair write-lock.  The use of
sync to enforce serial queueing wasn't fair and caused inconsistent
latency.  I observed one thread that was blocked trying to get the
sync for over 30 seconds while other subsequent threads were able to
get the sync and queue their events.


> SerialGatewaySenderQueue concurrency is poorly implemented
> ----------------------------------------------------------
>
>                 Key: GEODE-5922
>                 URL: https://issues.apache.org/jira/browse/GEODE-5922
>             Project: Geode
>          Issue Type: Improvement
>          Components: wan
>            Reporter: Bruce Schuchardt
>            Assignee: Bruce Schuchardt
>            Priority: Major
>
> This class uses synchronization on the queue to limit access to one put at a 
> time.  Synchronization isn't a fair locking mechanism so threads can be 
> blocked trying to add events to the queue while other more recent events get 
> the lock and insert their events.  This causes inconsistent latency which 
> I've observed being as long as 30 seconds, causing client connections to be 
> shut down by the ClientHealthMonitor.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to