Uploaded image for project: 'Geode'
  1. Geode
  2. GEODE-6058

recordVersion should allow update higher local version if for non-persistent region

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.9.0
    • None

    Description

      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. 

      Attachments

        Issue Links

          Activity

            People

              zhouxj Xiaojian Zhou
              zhouxj Xiaojian Zhou
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 0.5h
                  0.5h