xiaojian zhou created GEODE-6058:
------------------------------------
Summary: recordVersion should allow update higher local version if
for non-persistent region
Key: GEODE-6058
URL: https://issues.apache.org/jira/browse/GEODE-6058
Project: Geode
Issue Type: Bug
Reporter: xiaojian zhou
When we introduced RVV, we put an assertion to disallow recordVersion to be a
higher local version. i.e. the local version should be increased by local
member, not from remote (such as GII).
But we forgot to enforce this assertion for persistent region only.
The reason is: If in persist region, the operation increased local version and
persist it first before sending out distribution. And it will recover from
disk. So there's no reason for a persistent region to get a higher local
version from remote (such as GII).
But this is not the case for non-persistent region.
If we have a non-persistent region with concurrencyCheckEnabled, memberA
initiated an operation and distributed to remote. The remote member keeps
memberA's region version as 1. If we destroy and recreate region on memberA, it
cannot recover from disk. The only way to get RVV back is through GII from
remote. So we have to allow updating region version 1 for memberA into
memberA's empty RVV.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)