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

Destroy region command doesn't clear the region related expired tombstones

    XMLWordPrintableJSON

Details

    Description

      Tombstones in geode are kept on two maps: expiredTombstones and tombstones (non-expired ones). When a region is destroyed, it must clear all the related expired and non-expired tombstones from memory. Due to the below code bug, expired tombstones aren't cleared when non-expired tombstones are available during the region destruction:

      private boolean removeIf(Predicate<Tombstone> predicate) {      
        return removeUnexpiredIf(predicate) || removeExpiredIf(predicate);    
      }
      

      Because of the above, non-expired tombstones are never removed from memory, preventing other tombstones from being cleared. Since other tombstones never expire, the compaction is not done, and therefore the disk is filled, causing the issues.

      Attachments

        Issue Links

          Activity

            People

              jvarenina Jakov Varenina
              jvarenina Jakov Varenina
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: