5 Replies Latest reply: Nov 4, 2010 10:07 AM by 783859 RSS

    Data objects sent with push-replication don't expire/flush on the target c

    749606
      Data objects sent with push-replication don't expire/flush on the target cluster.

      In my test environment I see expired data objects being flushed from the active side of an active-passive pushrep setup. The pushed data objects on the target (passive) cluster are never flushed. I'm guessnig the expiration informatin is not pushed along with the data via push-rep. A flush-delay of 5 minutes is set on both the active and passive storage nodes.
        • 1. Re: Data objects sent with push-replication don't expire/flush on the target c
          Bob Hanckel
          Can you post config files for the target cluster?

          Thanks,

          Bob
          • 2. Re: Data objects sent with push-replication don't expire/flush on the target c
            783859
            Here are the cache configuration files for extend and storage nodes in the passive cluster.

            ---< Extend Node Cache Configuration >-------------------------------

            <?xml version='1.0'?>
            <!DOCTYPE cache-config SYSTEM "cache-config.dtd">

            <cache-config>

                 <caching-scheme-mapping>
                      <cache-mapping>
                           <cache-name>*</cache-name>
                           <scheme-name>passive-distributed-cache</scheme-name>
                      </cache-mapping>
                 </caching-scheme-mapping>

                 <caching-schemes>
                      <distributed-scheme>
                           <scheme-name>passive-distributed-cache</scheme-name>
                           <service-name>Group-App-PassiveDistributedCache</service-name>
                           <local-storage>false</local-storage>
                           <autostart>true</autostart>
                      </distributed-scheme>

                      <proxy-scheme>
                           <scheme-name>passive-proxy</scheme-name>
                           <service-name>Group-App-PassiveExtend</service-name>
                           <thread-count>50</thread-count>
                           <acceptor-config>
                                <tcp-acceptor>
                                     <local-address>
                                          <address>localhost</address>
                                          <port>9099</port>
                                     </local-address>
                                </tcp-acceptor>
                           </acceptor-config>
                           <autostart>true</autostart>
                      </proxy-scheme>
                 </caching-schemes>
            </cache-config>



            ---< Storage Node Cache Configuration >-------------------------------

            <?xml version='1.0'?>
            <!DOCTYPE cache-config SYSTEM "cache-config.dtd">

            <cache-config>

                 <caching-scheme-mapping>
                      <cache-mapping>
                           <cache-name>*</cache-name>
                           <scheme-name>passive-distributed-cache</scheme-name>
                      </cache-mapping>
                 </caching-scheme-mapping>

                 <caching-schemes>
                      <distributed-scheme>
                           <scheme-name>passive-distributed-cache</scheme-name>
                           <service-name>Group-App-PassiveDistributedCache</service-name>
                           <backing-map-scheme>
                                <local-scheme>
                                     <high-units>2000000000</high-units>
                                     <unit-calculator>BINARY</unit-calculator>
                                     <flush-delay>5M</flush-delay>
                                </local-scheme>
                           </backing-map-scheme>
                           <partition-count>5557</partition-count>
                           <backup-count>1</backup-count>
                           <thread-count>10</thread-count>
                           <autostart>true</autostart>
                      </distributed-scheme>
                 </caching-schemes>
            </cache-config>
            • 3. Re: Data objects sent with push-replication don't expire/flush on the target c
              Bob Hanckel
              It looks like you are not using an explicit expiry delay on the target which
              means it defaults to 0 and hence no entries will expire.

              The flush delay that you have specified simply indicates how often expired
              entries get flushed.
              • 4. Re: Data objects sent with push-replication don't expire/flush on the target c
                783859
                We are not setting an expiry delay in the configuration because we want the default behavior to be that objects do not expire.

                The objects that expire are those that are put into the cache with: put(Object oKey, Object oValue, long cMillis)

                The client uses both put(Object oKey, Object oValue) and put(Object oKey, Object oValue, long cMillis) methods on the Active cache. They never put directly into the passive cache.

                On the active cache we see the objects that were put with put(Object oKey, Object oValue, long cMillis) expiring. We do not see those objects expiring on the passive cache.
                • 5. Re: Data objects sent with push-replication don't expire/flush on the target c
                  783859
                  Meant to say (for the last sentence in the last reply):

                  On the active cache we see the objects that were put with put(Object oKey, Object oValue, long cMillis) being flushed. We do not see those objects being flushed on the passive cache.