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)