Exception Description:
2018-06-0614:24:02.932 ERROR 17364---[ange-worker-#42]. c.d.d.p.griddhtpartitionsexchangefuture:failed to reinitialize local PA Rtitions (preloading'll be stopped): ...java.lang.IndexOutOfBoundsException: Index 678...Org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker. Body (gridcachepartitionexchangemanager.java:2279) [Ignite-core-2.3.0.jar: 2.3.0] atOrg.apache.ignite.internal.util.worker.GridWorker.run (gridworker.java:110) [Ignite-core-2.3.0.jar: 2.3.0] atJava.lang.Thread.run (thread.java:745) [na: 1.8.0_73]2018-06-0614:24:02.932 INFO 17364---[ange-worker-#42]. C.d.d.p.griddhtpartitionsexchangefuture:finish Exchange Future [StartVe r=affinitytopologyversion [Topver=1, Minortopver=1], resver=null, Err=java.lang.indexoutofboundsexception:index 678 ]2018-06-0614:24:02.941 ERROR 17364---[ange-worker-#42]. i.p.c.gridcachepartitionexchangemanager:failed to wait for completion of Partition map Exchange (Preloading would not start):Griddhtpartitionsexchangefuture...org.apache.ignite.IgniteCheckedException: Index 678 atOrg.apache.ignite.internal.util.IgniteUtils.cast (igniteutils.java:7252)~[Ignite-core-2.3.0.jar: 2.3.0]....Org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker. Body (gridcachepartitionexchangemanager.java:2279)~[Ignite-core-2.3.0.jar: 2.3.0]...2 Common frames omitted
This occurs for the following reasons:
If the defined cache type is replicated mode, and persistence is turned on, it is later changed to partitioned mode and the data is imported, and this error is reported at subsequent reboots.
For example, the following situation:
Default-config.xml
<propertyname="Cacheconfiguration"> <list> <beanclass="Org.apache.ignite.configuration.CacheConfiguration">...<propertyname="Name"value="Test"/> <propertyname="Atomicitymode"value="ATOMIC"/> <propertyname="CacheMode"value="Replicated"/>...</bean> </list> </property>
ignite.destroyCache("Test"); IgniteCache<Long, CommRate> cache = ignite.getOrCreateCache("Test");
This problem occurs when the configuration in Default-config.xml is restarted when the restart is in effect.
The workaround is to not change the cache mode in persistent mode, or to avoid pre-defined cache types in the configuration file.
I can ' t reproduce your case. But the issue could occur if you had a replicated cache and after some time changed it to partitioned and for example call To Getorcreatecache keeping old cache name.
Reference Links:
Http://apache-ignite-users.70518.x6.nabble.com/Weird-index-out-bound-Exception-td14905.html
Ignite:java.lang.IndexOutOfBoundsException + Failed to wait for completion of partition map Exchange