Darrel Schneider created GEODE-2535:
---------------------------------------

             Summary: DiskId keyId is not correctly updated
                 Key: GEODE-2535
                 URL: https://issues.apache.org/jira/browse/GEODE-2535
             Project: Geode
          Issue Type: Bug
          Components: persistence
            Reporter: Darrel Schneider


On a persistent region the DiskId keyId will be set negative if the value is 
not in memory but can be read from disk.
The code correctly sets it the first time an entry is recovered from disk but 
does not correctly update it if a that same entry is recovered more than once 
from disk. This can happen when a krf for an oplog does not exist. The same 
entry can have multiple records for the same key.

They code that does not correctly update DiskId keyId is in these methods:
org.apache.geode.internal.cache.DiskEntry.Helper.basicUpdate(DiskEntry, 
LocalRegion, Object, EntryEventImpl): see the section that handles 
RecoveredEntry
and 
org.apache.geode.internal.cache.DiskEntry.Helper.updateRecoveredEntry(PlaceHolderDiskRegion,
 DiskEntry, RecoveredEntry, RegionEntryContext)

The only issue with not updating this keyId is that it can cause the "inVM" and 
"onDisk" statistics to be incorrect.



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

Reply via email to