Denis Chudov created IGNITE-12112: ------------------------------------- Summary: H2TreeIndex should throw CorruptTreeException with cacheId, cacheName and indexName Key: IGNITE-12112 URL: https://issues.apache.org/jira/browse/IGNITE-12112 Project: Ignite Issue Type: Improvement Reporter: Denis Chudov Assignee: Denis Chudov
At the moment we can't define problem cache, If we have many caches in one cache group and CorruptTreeException was thrown CorruptTreeException. For example: {code:java} org.h2.message.DbException: General error: "class org.apache.ignite.internal.processors.cache.persistence.tree.CorruptedTreeException: Runtime failure on row: Row@346ba4aa[ key: 29003, val: com.sbt.acquiring.processing.entities.dictionaries.TurnoverRange_DPL_PROXY [idHash=492721050, hash=-616731792, valueStart=20000001, isImmutable=false, lastChangeDate=1560917668719, name=Ñâûøå 200000, valueEnd=null, changeState=null, id=29003, pkey=7c0d0d59-f33e-41d7-a5c9-4d8c7e74b976, ownerId=acquiring-processing-replication, base=true], ver: GridCacheVersion [topVer=172396060, order=1560917613306, nodeOrder=2] ][ Ñâûøå 200000, null, 20000001, TRUE, null, 29003, 7c0d0d59-f33e-41d7-a5c9-4d8c7e74b976 ]" [50000-195] at org.h2.message.DbException.get(DbException.java:168) at org.h2.message.DbException.convert(DbException.java:295) at org.apache.ignite.internal.processors.query.h2.database.H2TreeIndex.putx(H2TreeIndex.java:251) at org.apache.ignite.internal.processors.query.h2.opt.GridH2Table.addToIndex(GridH2Table.java:548) at org.apache.ignite.internal.processors.query.h2.opt.GridH2Table.update(GridH2Table.java:480) at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.store(IgniteH2Indexing.java:709) at org.apache.ignite.internal.processors.query.GridQueryProcessor.store(GridQueryProcessor.java:1863) at org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager.store(GridCacheQueryManager.java:403) at org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$CacheDataStoreImpl.finishUpdate(IgniteCacheOffheapManagerImpl.java:1402) at org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$CacheDataStoreImpl.invoke(IgniteCacheOffheapManagerImpl.java:1263) at org.apache.ignite.internal.processors.cache.persistence.GridCacheOffheapManager$GridCacheDataStore.invoke(GridCacheOffheapManager.java:1625) at org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl.invoke(IgniteCacheOffheapManagerImpl.java:358) at org.apache.ignite.internal.processors.cache.GridCacheMapEntry.storeValue(GridCacheMapEntry.java:3629) at org.apache.ignite.internal.processors.cache.GridCacheMapEntry.initialValue(GridCacheMapEntry.java:2793) at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemander.preloadEntry(GridDhtPartitionDemander.java:902) at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemander.handleSupplyMessage(GridDhtPartitionDemander.java:772) at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPreloader.handleSupplyMessage(GridDhtPreloader.java:344) at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$5.apply(GridCachePartitionExchangeManager.java:418) at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$5.apply(GridCachePartitionExchangeManager.java:408) at org.apache.ignite.internal.processors.cache.GridCacheIoManager.processMessage(GridCacheIoManager.java:1061) at org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:586) at org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$700(GridCacheIoManager.java:101) at org.apache.ignite.internal.processors.cache.GridCacheIoManager$OrderedMessageListener.onMessage(GridCacheIoManager.java:1624) at org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1556) at org.apache.ignite.internal.managers.communication.GridIoManager.access$4100(GridIoManager.java:125) at org.apache.ignite.internal.managers.communication.GridIoManager$GridCommunicationMessageSet.unwind(GridIoManager.java:2752) at org.apache.ignite.internal.managers.communication.GridIoManager.unwindMessageSet(GridIoManager.java:1516) at org.apache.ignite.internal.managers.communication.GridIoManager.access$4400(GridIoManager.java:125) at org.apache.ignite.internal.managers.communication.GridIoManager$10.run(GridIoManager.java:1485) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: org.h2.jdbc.JdbcSQLException: General error: "class org.apache.ignite.internal.processors.cache.persistence.tree.CorruptedTreeException: Runtime failure on row: Row@346ba4aa[ key: 29003, val: com.sbt.acquiring.processing.entities.dictionaries.TurnoverRange_DPL_PROXY [idHash=492721050, hash=-616731792, valueStart=20000001, isImmutable=false, lastChangeDate=1560917668719, name=Ñâûøå 200000, valueEnd=null, changeState=null, id=29003, pkey=7c0d0d59-f33e-41d7-a5c9-4d8c7e74b976, ownerId=acquiring-processing-replication, base=true], ver: GridCacheVersion [topVer=172396060, order=1560917613306, nodeOrder=2] ][ Ñâûøå 200000, null, 20000001, TRUE, null, 29003, 7c0d0d59-f33e-41d7-a5c9-4d8c7e74b976 ]" [50000-195] at org.h2.message.DbException.getJdbcSQLException(DbException.java:345) ... 32 common frames omitted Caused by: org.apache.ignite.internal.processors.cache.persistence.tree.CorruptedTreeException: Runtime failure on row: Row@346ba4aa[ key: 29003, val: com.sbt.acquiring.processing.entities.dictionaries.TurnoverRange_DPL_PROXY [idHash=492721050, hash=-616731792, valueStart=20000001, isImmutable=false, lastChangeDate=1560917668719, name=Ñâûøå 200000, valueEnd=null, changeState=null, id=29003, pkey=7c0d0d59-f33e-41d7-a5c9-4d8c7e74b976, ownerId=acquiring-processing-replication, base=true], ver: GridCacheVersion [topVer=172396060, order=1560917613306, nodeOrder=2] ][ Ñâûøå 200000, null, 20000001, TRUE, null, 29003, 7c0d0d59-f33e-41d7-a5c9-4d8c7e74b976 ] at org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.doPut(BPlusTree.java:2133) at org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.putx(BPlusTree.java:2080) at org.apache.ignite.internal.processors.query.h2.database.H2TreeIndex.putx(H2TreeIndex.java:248) ... 29 common frames omitted Caused by: org.apache.ignite.binary.BinaryObjectException: Failed to get field because type ID of passed object differs from type ID this BinaryField belongs to [expected=-1254233435, actual=-1230512172] at org.apache.ignite.internal.binary.BinaryFieldImpl.fieldOrder(BinaryFieldImpl.java:287) at org.apache.ignite.internal.binary.BinaryFieldImpl.value(BinaryFieldImpl.java:109) at org.apache.ignite.internal.processors.query.property.QueryBinaryProperty.fieldValue(QueryBinaryProperty.java:249) {code} We should have information about operated cache (cacheId, cacheName) and indexName if it possible. -- This message was sent by Atlassian Jira (v8.3.2#803003)