Hi All,
I am trying to create an searchable cache where in Linux environment I am
getting the below exception everytime but not getting it in my Windows
laptop.

org.apache.ignite.IgniteCheckedException: Failed to register query type:
QueryTypeDescriptorImpl [space=loginServiceTokenCacheIgnite,
name=TokenSessionDetails, tblName=null, fields={globalSessionId=class
java.lang.String, serviceSessionId=class java.lang.String, serviceId=class
java.lang.String, bindingKey=class java.lang.String, tokenScope=class
java.lang.Object}, idxs={}, fullTextIdx=null, keyCls=class java.lang.String,
valCls=class java.lang.Object, keyTypeName=java.lang.String,
valTypeName=com.pg.loginservice.tokenmanagement.data.TokenSessionDetails,
valTextIdx=false, typeId=0, affKey=null, keyFieldName=null,
valFieldName=null, obsolete=false]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:1866)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.GridQueryProcessor.registerCache0(GridQueryProcessor.java:1306)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart0(GridQueryProcessor.java:756)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:817)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:1265)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:1943)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:1833)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.CacheAffinitySharedManager.onCacheChangeRequest(CacheAffinitySharedManager.java:379)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onCacheChangeRequest(GridDhtPartitionsExchangeFuture.java:688)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:529)
[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:1806)
[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
[ignite-core-2.0.0.jar:2.0.0]
        at java.lang.Thread.run(Thread.java:744) [?:1.7.0_45]
Caused by: org.h2.jdbc.JdbcSQLException: General error:
"java.lang.IllegalMonitorStateException: Attempted to release write lock
while not holding it [lock=00007f4c31441960, state=0002ffff0000280d"; SQL
statement:
CREATE TABLE "loginServiceTokenCacheIgnite".TokenSessionDetails (_key
VARCHAR INVISIBLE NOT NULL,_val OTHER INVISIBLE,_ver OTHER
INVISIBLE,globalSessionId VARCHAR,serviceSessionId VARCHAR,serviceId
VARCHAR,bindingKey VARCHAR,tokenScope OTHER) engine
"org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$H2TableEngine"
[50000-195]
        at
org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
~[h2-1.4.195.jar:1.4.195]
        at org.h2.message.DbException.get(DbException.java:168)
~[h2-1.4.195.jar:1.4.195]
        at org.h2.message.DbException.convert(DbException.java:295)
~[h2-1.4.195.jar:1.4.195]
        at org.h2.command.Command.executeUpdate(Command.java:268)
~[h2-1.4.195.jar:1.4.195]
        at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:193)
~[h2-1.4.195.jar:1.4.195]
        at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:165)
~[h2-1.4.195.jar:1.4.195]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$H2TableEngine.createTable(IgniteH2Indexing.java:3975)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.createTable(IgniteH2Indexing.java:2006)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:1859)
~[ignite-indexing-2.0.0.jar:2.0.0]
        ... 12 more
Caused by: java.lang.IllegalMonitorStateException: Attempted to release
write lock while not holding it [lock=00007f4c31441960,
state=0002ffff0000280d
        at
org.apache.ignite.internal.util.OffheapReadWriteLock.writeUnlock(OffheapReadWriteLock.java:259)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.pagemem.impl.PageMemoryNoStoreImpl.writeUnlock(PageMemoryNoStoreImpl.java:495)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.database.tree.util.PageHandler.writeUnlock(PageHandler.java:379)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.database.tree.util.PageHandler.writePage(PageHandler.java:288)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.database.tree.util.PageHandler.initPage(PageHandler.java:225)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.database.DataStructure.init(DataStructure.java:328)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.cache.database.tree.BPlusTree.initTree(BPlusTree.java:796)
~[ignite-core-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.database.H2Tree.<init>(H2Tree.java:110)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.database.H2TreeIndex$1.<init>(H2TreeIndex.java:123)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.database.H2TreeIndex.<init>(H2TreeIndex.java:112)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.createSortedIndex(IgniteH2Indexing.java:947)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.access$2800(IgniteH2Indexing.java:241)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$TableDescriptor.createSystemIndexes(IgniteH2Indexing.java:3131)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.opt.GridH2Table.<init>(GridH2Table.java:153)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$H2TableEngine.createTable(IgniteH2Indexing.java:3992)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$H2TableEngine.createTable(IgniteH2Indexing.java:3942)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at org.h2.schema.Schema.createTable(Schema.java:612)
~[h2-1.4.195.jar:1.4.195]
        at org.h2.command.ddl.CreateTable.update(CreateTable.java:139)
~[h2-1.4.195.jar:1.4.195]
        at org.h2.command.CommandContainer.update(CommandContainer.java:101)
~[h2-1.4.195.jar:1.4.195]
        at org.h2.command.Command.executeUpdate(Command.java:260)
~[h2-1.4.195.jar:1.4.195]
        at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:193)
~[h2-1.4.195.jar:1.4.195]
        at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:165)
~[h2-1.4.195.jar:1.4.195]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$H2TableEngine.createTable(IgniteH2Indexing.java:3975)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.createTable(IgniteH2Indexing.java:2006)
~[ignite-indexing-2.0.0.jar:2.0.0]
        at
org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:1859)
~[ignite-indexing-2.0.0.jar:2.0.0]
        ... 12 more


My cache config

    <bean id="loginServiceTokenCacheIgnite"
class="org.apache.ignite.configuration.CacheConfiguration"
scope="singleton">
        <property name="name" value="loginServiceTokenCacheIgnite"/>
        <property name="cacheMode" value="PARTITIONED"/>
        <property name="backups" value="1"/>
        <property name="writeSynchronizationMode" value="FULL_SYNC"/>
        <property name="statisticsEnabled" value="true"/>
        <property name="expiryPolicyFactory"
ref="loginServiceTokenExpiryPolicyFactory"/>
        <property name="rebalanceMode" value="ASYNC"/>
        <property name="rebalanceBatchSize" value="#{1024 * 1024}"/>
        <property name="rebalanceThrottle" value="0"/>
        <property name="rebalanceThreadPoolSize" value="4"/>
        <property name="queryEntities">
            <list>
                <bean class="org.apache.ignite.cache.QueryEntity">
                    <property name="keyType" value="java.lang.String"/>
                    <property name="valueType"
value="com.pg.loginservice.tokenmanagement.data.TokenSessionDetails"/>
                    <property name="fields">
                        <map>
                            <entry key="globalSessionId"
value="java.lang.String"/>
                            <entry key="serviceSessionId"
value="java.lang.String"/>
                            <entry key="serviceId"
value="java.lang.String"/>
                            <entry key="bindingKey"
value="java.lang.String"/>
                            <entry key="tokenScope"
value="com.pg.loginservice.api.TokenScope"/>
                        </map>
                    </property>
                    <property name="indexes">
                        <list>
                            <bean
class="org.apache.ignite.cache.QueryIndex">
                                <constructor-arg value="globalSessionId"/>
                            </bean>
                            <bean
class="org.apache.ignite.cache.QueryIndex">
                                <constructor-arg value="serviceSessionId"/>
                            </bean>
                            <bean
class="org.apache.ignite.cache.QueryIndex">
                                <constructor-arg value="serviceId"/>
                            </bean>
                            <bean
class="org.apache.ignite.cache.QueryIndex">
                                <constructor-arg value="bindingKey"/>
                            </bean>
                        </list>
                    </property>
                                </bean>
                         </list>
        </property>
    </bean>

    <bean id="loginServiceTokenExpiryPolicyFactory"
          class="javax.cache.configuration.FactoryBuilder"
factory-method="factoryOf">
        <constructor-arg ref="loginServiceTokenAccessedExpiryPolicy"/>
    </bean>

    <bean id="loginServiceTokenAccessedExpiryPolicy"
class="javax.cache.expiry.EternalExpiryPolicy">
    </bean>
        
Ignite Config XML
<beans xmlns="http://www.springframework.org/schema/beans";
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
       xsi:schemaLocation="
        http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd";>

        <bean id="ignite.cfg"
class="org.apache.ignite.configuration.IgniteConfiguration">
        <property name="clientMode" value="${clientMode}"/>
        <property name="igniteInstanceName" value="LoginServices"/>
        <property name="peerClassLoadingEnabled" value="false"/>
        <property name="metricsUpdateFrequency" value="2000" />
        <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>10.1.54.66:47500..47509</value>
                            </list>
                        </property>
                    </bean>
                </property>
                <property name="localAddress" value="${hostname}"/>
                <property name="reconnectCount" value="100"/>
                <property name="networkTimeout" value="10000"/>
                <property name="socketTimeout" value="10000"/>
                <property name="ackTimeout" value="10000"/>
                <property name="statisticsPrintFrequency" value="60000"/>
            </bean>
        </property>

        <property name="communicationSpi">
            <bean
class="org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi">
                <property name="localAddress" value="${hostname}"/>
                <property name="slowClientQueueLimit" value="18000"/>
                <property name="messageQueueLimit" value="20000"/>
                <property name="localPort" value="9090"/>
                <property name="connectTimeout" value="5000"/>
                <property name="idleConnectionTimeout" value="75000"/>
                <property name="sharedMemoryPort" value="-1"/>
            </bean>
        </property>
    

        <property name="memoryConfiguration">
            <bean
class="org.apache.ignite.configuration.MemoryConfiguration">
                <property name="memoryPolicies">
                    <list>
                        <bean
class="org.apache.ignite.configuration.MemoryPolicyConfiguration">
                            <property name="name"
value="loginServiceOffHeap"/>
                            <property name="initialSize" value="#{ 256L *
1024 * 1024}"/>
                            <property name="maxSize" value="#{ 512L * 1024 *
1024}"/>
                            <property name="pageEvictionMode"
value="RANDOM_LRU"/>
                            <property name="metricsEnabled" value="true"/>
                        </bean>
                    </list>
                </property>
            <property name="defaultMemoryPolicyName"
value="loginServiceOffHeap"/>
        </bean>
    </property>
    </bean>
</beans>
                   
Please help me out.






--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Caused-by-org-h2-jdbc-JdbcSQLException-General-error-java-lang-IllegalMonitorStateException-Attemptet-tp15684.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Reply via email to