Hi all,

Some time i got this exception and service crash after that. I think that 
Ignite got exception during
remove expired records. I have few Caches with expiry but only this Cache got 
exception.

Anyone know how to sort this issue?

Here are exception details and configuration:

StackTrace:
```
[11:27:17,451][SEVERE][ttl-cleanup-worker-#39%TravelInventory%][] Critical 
system error detected. Will be handled accordingly to configured handler 
[hnd=class o.a.i.failure.StopNodeOrHaltFailureHandler, 
failureCtx=FailureContext [type=SYSTEM_WORKER_TERMINATION, err=class 
o.a.i.IgniteException: Runtime failure on search row: Row@6a4eb016[ key: 
8bbcac6f-3219-48e3-a1cf-cae8be90752e, val: GoQuoEngine.Data.Domain.PackageQuery 
[idHash=793518907, hash=1245385215 .... ]]]
class org.apache.ignite.IgniteException: Runtime failure on search row: 
Row@6a4eb016[ key: 8bbcac6f-3219-48e3-a1cf-cae8be90752e, val: 
GoQuoEngine.Data.Domain.PackageQuery [idHash=793518907, hash=1245385215 .... ]]
        at 
org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.doRemove(BPlusTree.java:1800)
        at 
org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.removex(BPlusTree.java:1595)
        at 
org.apache.ignite.internal.processors.query.h2.database.H2TreeIndex.removex(H2TreeIndex.java:289)
        at 
org.apache.ignite.internal.processors.query.h2.opt.GridH2Table.remove(GridH2Table.java:522)
        at 
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.remove(IgniteH2Indexing.java:703)
        at 
org.apache.ignite.internal.processors.query.GridQueryProcessor.remove(GridQueryProcessor.java:2518)
        at 
org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.remove(GridCacheQueryManager.java:457)
        at 
org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$CacheDataStoreImpl.finishRemove(IgniteCacheOffheapManagerImpl.java:1456)
        at 
org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$CacheDataStoreImpl.remove(IgniteCacheOffheapManagerImpl.java:1426)
        at 
org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl.remove(IgniteCacheOffheapManagerImpl.java:377)
        at 
org.apache.ignite.internal.processors.cache.GridCacheMapEntry.removeValue(GridCacheMapEntry.java:3679)
        at 
org.apache.ignite.internal.processors.cache.GridCacheMapEntry.onExpired(GridCacheMapEntry.java:3409)
        at 
org.apache.ignite.internal.processors.cache.GridCacheMapEntry.onTtlExpired(GridCacheMapEntry.java:3341)
        at 
org.apache.ignite.internal.processors.cache.GridCacheTtlManager$1.applyx(GridCacheTtlManager.java:60)
        at 
org.apache.ignite.internal.processors.cache.GridCacheTtlManager$1.applyx(GridCacheTtlManager.java:51)
        at 
org.apache.ignite.internal.util.lang.IgniteInClosure2X.apply(IgniteInClosure2X.java:38)
        at 
org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl.expire(IgniteCacheOffheapManagerImpl.java:1049)
        at 
org.apache.ignite.internal.processors.cache.GridCacheTtlManager.expire(GridCacheTtlManager.java:197)
        at 
org.apache.ignite.internal.processors.cache.GridCacheSharedTtlCleanupManager$CleanupWorker.body(GridCacheSharedTtlCleanupManager.java:137)
        at 
org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
        at java.lang.Thread.run(Thread.java:748)
```

Configuration:

```XML
<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans";
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
       xmlns:util="http://www.springframework.org/schema/util";
       xsi:schemaLocation="http://www.springframework.org/schema/beans
                           
http://www.springframework.org/schema/beans/spring-beans.xsd
                           http://www.springframework.org/schema/util
                           
http://www.springframework.org/schema/util/spring-util.xsd";>
    <bean class="org.apache.ignite.configuration.IgniteConfiguration">
        <property name="igniteInstanceName" value="Sample"/>
        <property name="localHost" value="127.0.0.1"/>

        <property name="discoverySpi">
            <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
                <property name="ipFinder">
                    <bean 
class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
                        <property name="addresses">
                            <list>
                                <value>127.0.0.1:47500..47510</value>
                            </list>
                        </property>
                    </bean>
                </property>
            </bean>
        </property>
        <property name="communicationSpi">
            <bean 
class="org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi">
                <property name="localAddress" value="127.0.0.1"/>
            </bean>
        </property>
        <property name="deploymentMode" value="CONTINUOUS"/>
        <property name="loadBalancingSpi">
            <list>
                <bean 
class="org.apache.ignite.spi.loadbalancing.weightedrandom.WeightedRandomLoadBalancingSpi">
                </bean>
            </list>
        </property>

        <property name="dataStorageConfiguration">
            <bean 
class="org.apache.ignite.configuration.DataStorageConfiguration">

                <property name="writeThrottlingEnabled" value="true"/>

                <property name="dataRegionConfigurations">
                    <list>
                        <bean 
class="org.apache.ignite.configuration.DataRegionConfiguration">
                            <property name="name" value="StaticRegion"/>
                            <property name="maxSize" value="#{2* 1024L * 1024 * 
1024}"/> 
                            <property name="initialSize" value="#{1 *1024L * 
1024 * 1024}"/>
                            <property name="pageEvictionMode" 
value="RANDOM_LRU"/>
                            <property name="persistenceEnabled" value="true"/>  
 
                        </bean>
                    </list>
                </property>
                <property name="defaultDataRegionConfiguration">
                    <bean 
class="org.apache.ignite.configuration.DataRegionConfiguration">
                        <property name="name" value="NonPersistentRegion"/>
                    </bean>
                </property>
                <property name="walMode" value="BACKGROUND"/>
                <property name="fileIOFactory">
                    <bean 
class="org.apache.ignite.internal.processors.cache.persistence.file.AsyncFileIOFactory">
                    </bean>
                </property>
            </bean>
        </property>

        <property name="cacheConfiguration">
            <list>
                <bean 
class="org.apache.ignite.configuration.CacheConfiguration">
                    <property name="name" value="PackageQuery"/>
                    <property name="cacheMode" value="PARTITIONED"/>
                    <property name="atomicityMode" value="ATOMIC"/>
                    <property name="backups" value="0"/>
                    <property name="readFromBackup" value="False"/>
                    <property name="dataRegionName" 
value="NonPersistentRegion"/>

                    <property name="partitionLossPolicy" value="IGNORE"/>
                    <property name="rebalanceMode" value="ASYNC"/>
                    <property name="rebalanceBatchSize" value="1000"/>
                    <property name="rebalanceBatchesPrefetchCount" 
value="1000"/>
                    <property name="rebalanceOrder" value="0"/>
                    <property name="sqlSchema" value="public"/>

                    <property name="expiryPolicyFactory">
                        <bean class="javax.cache.expiry.CreatedExpiryPolicy" 
factory-method="factoryOf">
                            <constructor-arg>
                                <bean class="javax.cache.expiry.Duration">
                                    <constructor-arg value="MINUTES"/>
                                    <constructor-arg value="30"/>
                                </bean>
                            </constructor-arg>
                        </bean>
                    </property>


                    <property name="onheapCacheEnabled" value="true"/>

                    <property name="evictionPolicy">
                        <bean 
class="org.apache.ignite.cache.eviction.lru.LruEvictionPolicy">
                            <property name="maxSize" value="10000"/>
                        </bean>
                    </property>
                    <property name="queryEntities">
                        <list>
                            <bean class="org.apache.ignite.cache.QueryEntity">
                                <property name="keyType" 
value="java.util.UUID"/>
                                <property name="valueType" 
value="GoQuoEngine.Data.Domain.PackageQuery"/>

                                <property name="keyFields">
                                    <list>

                                    </list>
                                </property> 

                                <property name="fields">
                                    <map>
                                        <entry key="CabinClass" 
value="GoQuoEngine.Flights.CabinClass"/>
                                        <entry key="CheckIn" 
value="java.sql.Timestamp"/>
                                        <entry key="CheckOut" 
value="java.sql.Timestamp"/>
                                        <entry key="CreatedAt" 
value="java.sql.Timestamp"/>
                                        <entry key="CultureCode" 
value="java.lang.String"/>
                                        <entry key="Currency" 
value="java.lang.String"/>
                                        <entry key="DepartureDate" 
value="java.sql.Timestamp"/>
                                        <entry key="DirectFlightsOnly" 
value="java.lang.Boolean"/>
                                        <entry key="From" 
value="java.lang.String"/>
                                        <entry key="HashingInfo" 
value="java.lang.String"/>
                                        <entry key="IsInternationalFlight" 
value="java.lang.Boolean"/>
                                        <entry key="JourneyType" 
value="GoQuoEngine.Flights.JourneyType"/>
                                        <entry key="PackageType" 
value="java.lang.String"/>
                                        <entry key="ProductId" 
value="java.util.UUID"/>
                                        <entry key="PromoCode" 
value="java.lang.String"/>
                                        <entry key="ReturnDate" 
value="java.sql.Timestamp"/>
                                        <entry key="SessionId" 
value="java.lang.String"/>
                                        <entry key="SiteId" 
value="java.util.UUID"/>
                                        <entry key="To" 
value="java.lang.String"/>
                                        <entry key="Id" value="java.util.UUID"/>
                                    </map>
                                </property>

                                 <property name="notNullFields">
                                    <list>
                                       
                                    </list>
                                </property>

                                <property name="indexes">
                                    <list>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_PRODUCTID_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="ProductId" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_FROM_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="From" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_TO_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="To" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_DEPARTUREDATE_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="DepartureDate" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_RETURNDATE_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="ReturnDate" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_CHECKIN_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="CheckIn" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_CHECKOUT_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="CheckOut" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_ISINTERNATIONALFLIGHT_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry 
key="IsInternationalFlight" value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_CURRENCY_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="Currency" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_JOURNEYTYPE_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="JourneyType" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_CABINCLASS_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="CabinClass" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_DIRECTFLIGHTSONLY_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry 
key="DirectFlightsOnly" value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_PROMOCODE_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="PromoCode" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_HASHINGINFO_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="HashingInfo" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_SESSIONID_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="SessionId" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_CULTURECODE_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="CultureCode" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_CREATEDAT_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="CreatedAt" 
value="False"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_SITEID_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="SiteId" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>

                                         <bean 
class="org.apache.ignite.cache.QueryIndex">
                                            <property name="name" 
value="PACKAGEQUERY_PACKAGETYPE_IDX"/>
                                            <property name="indexType" 
value="SORTED"/>

                                            <property name="fields">
                                                <map>
                                                    <entry key="PackageType" 
value="True"/>
                                                </map>
                                            </property>
                                        </bean>                                 
                                    
                                    </list>
                                </property>
                            </bean>
                        </list>
                    </property>
                </bean>
            </list>
        </property>
    </bean>
</beans>

```

Sent from Mail for Windows 10

Reply via email to