You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geode.apache.org by "Eric Shu (JIRA)" <ji...@apache.org> on 2017/04/12 00:03:41 UTC

[jira] [Assigned] (GEODE-2694) RECOVERED_FROM_DISK bit is cleared during gii, but should be restored if the recovered entry and gii entry has the same version tag

     [ https://issues.apache.org/jira/browse/GEODE-2694?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Shu reassigned GEODE-2694:
-------------------------------

    Assignee: Eric Shu

> RECOVERED_FROM_DISK bit is cleared during gii, but should be restored if the recovered entry and gii entry has the same version tag
> -----------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: GEODE-2694
>                 URL: https://issues.apache.org/jira/browse/GEODE-2694
>             Project: Geode
>          Issue Type: Bug
>          Components: regions
>            Reporter: Eric Shu
>            Assignee: Eric Shu
>
> Currently for all gii entries, product clears the RECOVERED_FROM_DISK bit for DiskEntry. However, if entry comes from gii has the same version as recovered entry, the RECOVERED_FROM_DISK bit should be restored but does not.
> {noformat}
>             synchronized (re) { // fixes bug 41409
>               if (dr.testIsRecoveredAndClear(re)) {
>                 wasRecovered = true;
>                 if (tmpValue == null) {
>                   tmpValue = entry.isLocalInvalid() ? Token.LOCAL_INVALID : Token.INVALID;
>                 }
>                 // Compare the version stamps, and if they are equal
>                 // we can skip adding the entry we receive as part of GII.
>                 VersionStamp stamp = re.getVersionStamp();
>                 boolean entriesEqual = stamp != null && stamp.asVersionTag().equals(tag);
>                 // If the received entry and what we have in the cache
>                 // actually are equal, keep don't put the received
>                 // entry into the cache (this avoids writing a record to disk)
>                 if (entriesEqual) {
>                   continue;
>                 }
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)