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 <p.srika...@gmail.com> 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/
>

Reply via email to