Resharing the cache settings as it got snipped in the previous email:
<bean class="org.apache.ignite.configuration.IgniteConfiguration">
<property name="clientMode" value="true"/>
<property name="igniteInstanceName" value="ig_svc_cluster"/>
<property name="metricsLogFrequency" value="0"/>
<property name="discoverySpi">
<bean
class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
<property name="ipFinder">
<bean
class="org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder">
<property name="addresses">
<list>
<value>127.0.0.1:47500..47510</value>
</list>
</property>
</bean>
</property>
</bean>
</property>
<!-- Enabling Apache Ignite native persistence. -->
<property name="dataStorageConfiguration">
<bean
class="org.apache.ignite.configuration.DataStorageConfiguration">
<property name="defaultDataRegionConfiguration">
<bean
class="org.apache.ignite.configuration.DataRegionConfiguration">
<property name="name" value="Default_Region"/>
<!-- 500 MB initial size. -->
<property name="initialSize" value="#{500L * 1024 *
1024}"/>
<!-- Setting the size of the default region to 1GB.
-->
<property name="maxSize" value="#{1L * 1024 * 1024
* 1024}"/>
</bean>
</property>
<property name="dataRegionConfigurations">
<list>
<bean
class="org.apache.ignite.configuration.DataRegionConfiguration">
<property name="name"
value="FooNamesCache_Region"/>
<!-- 500 MB initial size. -->
<property name="initialSize" value="#{500L *
1024 * 1024}"/>
<!-- Setting the size of the default region to
2GB. -->
<property name="maxSize" value="#{2L * 1024 *
1024 * 1024}"/>
<property name="persistenceEnabled"
value="true"/>
</bean>
</list>
</property>
</bean>
</property>
<property name="cacheConfiguration">
<list>
<bean class="org.apache.ignite.configuration.CacheConfiguration">
<property name="dataRegionName"
value="FooNamesCache_Region"/>
<property name="name" value="foo_TNameCache"/>
<property name="cacheMode" value="REPLICATED"/>
<property name="atomicityMode" value="ATOMIC"/>
<property name="copyOnRead" value="true"/>
<property name="onheapCacheEnabled" value="true"/>
<property name="eagerTtl" value="true"/>
<property name="evictionPolicyFactory">
<bean
class="org.apache.ignite.cache.eviction.lru.LruEvictionPolicyFactory">
<property name="batchSize" value="200"/>
<property name="maxMemorySize" value="100000"/>
</bean>
</property>
<property name="sqlOnheapCacheEnabled" value="true"/>
<property name="sqlOnheapCacheMaxSize" value="100"/>
<property name="cacheStoreFactory">
<bean
class="org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStoreFactory">
<property name="dataSourceBean"
value="dsPostgreSQL_FooNames"/>
<property name="dialect">
<bean
class="org.apache.ignite.cache.store.jdbc.dialect.BasicJdbcDialect">
</bean>
</property>
<property name="types">
<list>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcType">
<property name="cacheName"
value="foo_TNameCache"/>
<property name="keyType"
value="java.lang.Integer"/>
<property name="valueType"
value="foo.TName"/>
<property name="databaseSchema"
value="public"/>
<property name="databaseTable"
value="t_name"/>
<property name="keyFields">
<list>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
<constructor-arg>
<util:constant
static-field="java.sql.Types.INTEGER"/>
</constructor-arg>
<constructor-arg
value="id"/>
<constructor-arg
value="int"/>
<constructor-arg
value="id"/>
</bean>
</list>
</property>
<property name="valueFields">
<list>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
<constructor-arg>
<util:constant
static-field="java.sql.Types.TIMESTAMP"/>
</constructor-arg>
<constructor-arg
value="date"/>
<constructor-arg
value="java.sql.Timestamp"/>
<constructor-arg
value="date"/>
</bean>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
<constructor-arg>
<util:constant
static-field="java.sql.Types.TIMESTAMP"/>
</constructor-arg>
<constructor-arg
value="modified_date"/>
<constructor-arg
value="java.sql.Timestamp"/>
<constructor-arg
value="modified_date"/>
</bean>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
<constructor-arg>
<util:constant
static-field="java.sql.Types.NUMERIC"/>
</constructor-arg>
<constructor-arg
value="secondary_id"/>
<constructor-arg
value="java.math.BigDecimal"/>
<constructor-arg
value="secondary_id"/>
</bean>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
<constructor-arg>
<util:constant
static-field="java.sql.Types.VARCHAR"/>
</constructor-arg>
<constructor-arg
value="name_orig"/>
<constructor-arg
value="java.lang.String"/>
<constructor-arg
value="nameOrig"/>
</bean>
<bean
class="org.apache.ignite.cache.store.jdbc.JdbcTypeField">
<constructor-arg>
<util:constant
static-field="java.sql.Types.VARCHAR"/>
</constructor-arg>
<constructor-arg
value="name_search"/>
<constructor-arg
value="java.lang.String"/>
<constructor-arg
value="nameSearch"/>
</bean>
</list>
</property>
</bean>
</list>
</property>
</bean>
</property>
<property name="readThrough" value="true"/>
<property name="writeThrough" value="true"/>
<property name="queryEntities">
<list>
<bean
class="org.apache.ignite.cache.QueryEntity">
<property name="keyType"
value="java.lang.Integer"/>
<property name="valueType"
value="foo.TName"/>
<property name="tableName" value="t_name"/>
<property name="keyFieldName" value="id"/>
<property name="keyFields">
<list>
<value>id</value>
</list>
</property>
<property name="fields">
<map>
<entry key="secondary_id"
value="java.math.BigDecimal"/>
<entry key="nameSearch"
value="java.lang.String"/>
<entry key="id"
value="java.lang.Integer"/>
</map>
</property>
<property name="aliases">
<map>
<entry key="nameOrig"
value="name_orig"/>
<entry key="nameSearch"
value="name_search"/>
</map>
</property>
<!-- Defining indexed fields.-->
<property name="indexes">
<list>
<!-- Single field (aka. column)
index -->
<bean
class="org.apache.ignite.cache.QueryIndex">
<constructor-arg
value="nameSearch"/>
</bean>
</list>
</property>
</bean>
</list>
</property>
</bean>
</list>
</property>
</bean>
On Sat, Aug 15, 2020 at 1:32 PM p.srikanta <[email protected]> wrote:
> I've been consistently getting a error "class
> o.a.i.i.processors.cache.persistence.tree.CorruptedTreeException: B+Tree is
> corrupted".
>
> I know a related bug was recently fixed in v2.8
> (https://issues.apache.org/jira/browse/IGNITE-12593) and another one is in
> progress (https://issues.apache.org/jira/browse/IGNITE-12911. However I'm
> not sure if my scenario is related to either one of them (though it is
> close
> to IGNITE-12593).
>
> Sharing more details to seek help in either identifying the bug or
> suggestion for possible work around, thanks in advance!
>
> *Note*: The below excpetion was not observed when the mentioned cache was
> initialized without any indexed field i.e without any QueryIndex within the
> QueryEntity config.
>
> *Ignite Version*: 2.8.1
>
> *Encountered Exception*
>
>
> *Size of the DB table*: 25M rows
>
> *Cache Settings*
>
>
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>