[ https://issues.apache.org/jira/browse/GEODE-9596?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17418336#comment-17418336 ]
ASF subversion and git services commented on GEODE-9596: -------------------------------------------------------- Commit edb24b8b2ccd498a9fb710872679c661213f8968 in geode's branch refs/heads/support/1.12 from Eric Shu [ https://gitbox.apache.org/repos/asf?p=geode.git;h=edb24b8 ] GEODE-9596: Avoid creating multiple cq maps in ClientUpdateMessage (#6869) * This can occur if HAContainer enables eviction. * Also addClientCq can be accessed concurrently by intialization threads during queue registration. (cherry picked from commit 00b41562f8c4e5982190795c0426e5884f57724a) > 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)