You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2021/09/17 22:51:00 UTC

[jira] [Commented] (GEODE-9596) CQ event might be missing if HAContainer enables eviction

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

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

Commit 00b41562f8c4e5982190795c0426e5884f57724a in geode's branch refs/heads/develop from Eric Shu
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=00b4156 ]

GEODE-9596: Avoid creating multiple cq maps in ClientUpdateMessage (#6869)

* GEODE-9596: Avoid creating multiple cq maps in ClientUpdateMessage

  * This can occur if HAContainer enables eviction.
  * Also addClientCq can be accessed concurrently by intialization threads during queue registration.


> CQ event might be missing if HAContainer enables eviction
> ---------------------------------------------------------
>
>                 Key: GEODE-9596
>                 URL: https://issues.apache.org/jira/browse/GEODE-9596
>             Project: Geode
>          Issue Type: Bug
>          Components: cq
>    Affects Versions: 1.12.0, 1.13.0, 1.14.0
>            Reporter: Eric Shu
>            Assignee: Eric Shu
>            Priority: Major
>              Labels: GeodeOperationAPI, pull-request-available
>
> The issue exists when proxies are enqueue cq messages to each HARegionQueue. As HAContainer enables eviction, the value (ClientUpdateMessageImpl) can be evicted. The next proxy needs to fault in the message when enqueues the event to its queue and _clientCqs map is lost during that exchange. 
> The operation will create a new _clientCqs map in this case, and if a dispatcher thread is processing the already queued event and access the map at the same time, it will not find its client in the cq maps, and thus cause the cq event is lost.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)