Uploaded image for project: 'Ignite'
  1. Ignite
  2. IGNITE-20561

Change condition for DistributionZonesUtil#triggerKeyConditionForZonesChanges to use ConditionType#TOMBSTONE

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 3.0
    • None

    Description

      Motivation
      Currently we use zonesChangeTriggerKey in DistributionZonesUtil#triggerKeyConditionForZonesChanges to create condition to initialize the zone's meta storage keys on a zone creation and to remove these keys on a zone drop. It cause some issues:

      1. we cannot remove zonesChangeTriggerKey to ensure that on the zone will not recreated on DZM restart
      2. it doesn't work properly now because it possible that on DZM restart the zone will be recreated with the revision which is higher than original the zone create revision.

      Implementation notes
      To fix it we need to get rid of zonesChangeTriggerKey and use a dataNodes ms key on a zone create and a zone drop.
      so the condition for a zone creation will be:

      and(
          notExists(dataNodes(zoneId)),
          notTombstone(dataNodes(zoneId))
      )

      and for a zone drop:

      exists(dataNodes(zoneId))

       
      Definition of done
      Got rid of the meta storage zonesChangeTriggerKey key.

      Attachments

        Issue Links

          Activity

            People

              maliev Mirza Aliev
              maliev Mirza Aliev
              Sergey Uttsel Sergey Uttsel
              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 - 40m
                  40m