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

Distributed destroy on eviction

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • docs, eviction

    Description

      I use entry-idle-time and eviction together in a partition region that holds one redundant copy.
      Details of setting are as follows:

      <region name="Data" refid="PARTITION">
        <region-attributes>
          <entry-idle-time>
            <expiration-attributes timeout="60" action="destroy" />
          </entry-idle-time>
          <partition-attributes redundant-copies="1" />
          <eviction-attributes>
            <lru-entry-count maximum="10" action="local-destroy" />
          </eviction-attributes>
        </region-attributes>
      </region>
      

      In this setting, the data held by the cache server is different. Then, inconsistent results are returned depending on the server to be connected. Eviction of the partition region can only select local-destroy or overflow-to-disk. On the other hand, it is written that the expire chapter of the document can not use local-destroy, local-invalidate in the partition region. Likewise, I think that data inconsistency will occur even with the settings like this time.

      Below is the test code:

      https://github.com/masaki-yamakawa/geode/blob/bug-partition-local-destroy/geode-core/src/test/java/org/apache/geode/internal/cache/partitioned/BugExpireAndEvictionDUnitTest.java

      I think that it is necessary to add a check at the time of region creation or write it in the document.

       

      **

      Problem: currently eviction-action must be either 'local-destroy' or 'overflow-to-disk'

      ex: <expiration-attributes timeout="60" action="local-destroy" />

      Solution: This story is to add the additional option "distributed-destroy" as an action setting for any eviction type. 

      This will enable a local destroy action to be distributed across the cluster (currently this does not exist)

       

      Acceptance: can set this on region configuration via cache.xml, API or gfsh

      gfsh help and docs have been updated

        

       

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              masaki.yamakawa Masaki Yamakawa
              Votes:
              1 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated: