geode-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (GEODE-5420) Protect events in HAContainer from being removed prematurely
Date Wed, 01 Aug 2018 18:26:00 GMT

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

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

Commit 103b467ab6205f6c9d180d5ad28705ce47c7b5bb in geode's branch refs/heads/develop from
[~mcmellawatt]
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=103b467 ]

GEODE-5420: Protect events in HAContainer from premature modification

- Updated putInProgress boolean in HAWrapper to a counter to prevent prematurely setting ClientUpdateMessage
to null when events are temporarily queued during a GII or message dispatcher initialization
- decAndRemoveFromHAContainer only removes when putInProgress counter and ref count are 0
- Refactored putEventInHARegion/putConditionallyInHAContainer to prevent overwriting an existing
entry in the HAContainer.  Also reduces simplifies the code and reduces duplicated logic.
- Wrote missing basic HARegionQueue unit/integration tests, and an integration test to capture
setting the ClientUpdateMessage property on HAEventWrapper to null prematurely
- Added new event tracing messages at debug logging level to help track similar issues in
the future

Co-authored-by: Ryan McMahon <rmcmahon@pivotal.io>
Co-authored-by: Lynn Hughes-Godfrey <lhughesgodfrey@pivotal.io>


> Protect events in HAContainer from being removed prematurely
> ------------------------------------------------------------
>
>                 Key: GEODE-5420
>                 URL: https://issues.apache.org/jira/browse/GEODE-5420
>             Project: Geode
>          Issue Type: Bug
>          Components: client queues
>    Affects Versions: 1.8.0
>            Reporter: Ryan McMahon
>            Assignee: Ryan McMahon
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 3h 40m
>  Remaining Estimate: 0h
>
> This can occur when:
> 1) Events are added to queuedEvents during message dispatcher initialization
> 2) Events are added to giiQueue while serving initial image to peer
> We have seen this issue when QRM messages are being processed after becoming primary.
 This causes the event to be removed prematurely from the HAContainer, and then the wrapper
is in a bad state (null client update message) when we try to replace the event.



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

Mime
View raw message