Ivan Bessonov created IGNITE-25740:
--------------------------------------
Summary: Broken hash index tree comparator
Key: IGNITE-25740
URL: https://issues.apache.org/jira/browse/IGNITE-25740
Project: Ignite
Issue Type: Bug
Reporter: Ivan Bessonov
Assignee: Ivan Bessonov
{noformat}
java.util.concurrent.CompletionException:
org.apache.ignite.internal.storage.StorageException: IGN-CMN-65535 Error while
advancing the cursor TraceId:cccee958
at
java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314)
at
java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1113)
at
java.base/java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:2237)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.processRequest(PartitionReplicaListener.java:628)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.processRequestInContext(PartitionReplicaListener.java:552)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.lambda$invoke$0(PartitionReplicaListener.java:539)
at
java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1106)
at
java.base/java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:2237)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.invoke(PartitionReplicaListener.java:539)
at
org.apache.ignite.internal.replicator.ReplicaImpl.processRequest(ReplicaImpl.java:124)
at
org.apache.ignite.internal.replicator.ReplicaManager.handleReplicaRequest(ReplicaManager.java:384)
at
org.apache.ignite.internal.replicator.ReplicaManager.lambda$onReplicaMessageReceived$0(ReplicaManager.java:315)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: org.apache.ignite.internal.storage.StorageException: IGN-CMN-65535
Error while advancing the cursor TraceId:cccee958
at
org.apache.ignite.internal.storage.pagememory.index.AbstractPageMemoryIndexStorage$ScanCursor.lambda$hasNext$0(AbstractPageMemoryIndexStorage.java:381)
at
org.apache.ignite.internal.storage.pagememory.index.AbstractPageMemoryIndexStorage.busy(AbstractPageMemoryIndexStorage.java:326)
at
org.apache.ignite.internal.storage.pagememory.index.AbstractPageMemoryIndexStorage.busyDataRead(AbstractPageMemoryIndexStorage.java:317)
at
org.apache.ignite.internal.storage.pagememory.index.AbstractPageMemoryIndexStorage$ScanCursor.hasNext(AbstractPageMemoryIndexStorage.java:377)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.continueResolvingByPk(PartitionReplicaListener.java:2026)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.lambda$resolveRowByPk$84(PartitionReplicaListener.java:2001)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.resolveRowByPk(PartitionReplicaListener.java:2015)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.processSingleEntryAction(PartitionReplicaListener.java:3118)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.lambda$processOperationRequest$6(PartitionReplicaListener.java:721)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.appendTxCommand(PartitionReplicaListener.java:2061)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.processOperationRequest(PartitionReplicaListener.java:716)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.processOperationRequestWithTxOperationManagementLogic(PartitionReplicaListener.java:3981)
at
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.lambda$processRequest$2(PartitionReplicaListener.java:629)
at
java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1106)
... 13 more
Caused by: org.apache.ignite.internal.pagememory.tree.CorruptedTreeException:
IGN-STORAGE-2 B+Tree is corrupted [groupId=20, pageIds=[563053032636565],
groupName=20, msg=Runtime failure on lookup next row: HashIndexRow [rowId=RowId
[partitionId=24, uuid=80000000-0000-0000-8000-000000000000],
super=HashIndexRowKey [indexColumnsHash=-424912485,
indexColumns=org.apache.ignite.internal.storage.pagememory.index.freelist.IndexColumns@c8c2fcd]]]
TraceId:cccee958
at
org.apache.ignite.internal.pagememory.tree.BplusTree.corruptedTreeException(BplusTree.java:6772)
at
org.apache.ignite.internal.pagememory.tree.BplusTree.findNext(BplusTree.java:1626)
at
org.apache.ignite.internal.storage.pagememory.index.AbstractPageMemoryIndexStorage$ScanCursor.peekBusy(AbstractPageMemoryIndexStorage.java:422)
at
org.apache.ignite.internal.storage.pagememory.index.AbstractPageMemoryIndexStorage$ScanCursor.advanceIfNeededBusy(AbstractPageMemoryIndexStorage.java:441)
at
org.apache.ignite.internal.storage.pagememory.index.AbstractPageMemoryIndexStorage$ScanCursor.lambda$hasNext$0(AbstractPageMemoryIndexStorage.java:379)
... 26 more
Caused by: java.lang.IllegalArgumentException: newLimit > capacity: (66 > 60)
at java.base/java.nio.Buffer.createLimitException(Buffer.java:372)
at java.base/java.nio.Buffer.limit(Buffer.java:346)
at java.base/java.nio.ByteBuffer.limit(ByteBuffer.java:1171)
at
org.apache.ignite.internal.storage.pagememory.index.hash.io.HashIndexTreeIo.compare(HashIndexTreeIo.java:188)
at
org.apache.ignite.internal.storage.pagememory.index.hash.HashIndexTree.compare(HashIndexTree.java:162)
at
org.apache.ignite.internal.storage.pagememory.index.hash.HashIndexTree.compare(HashIndexTree.java:32)
at
org.apache.ignite.internal.pagememory.tree.BplusTree.compare(BplusTree.java:5916)
at
org.apache.ignite.internal.pagememory.tree.BplusTree.findInsertionPoint(BplusTree.java:5820)
at
org.apache.ignite.internal.pagememory.tree.BplusTree$Search.run0(BplusTree.java:387)
at
org.apache.ignite.internal.pagememory.tree.BplusTree$GetPageHandler.run(BplusTree.java:6589)
at
org.apache.ignite.internal.pagememory.tree.BplusTree$Search.run(BplusTree.java:359)
at
org.apache.ignite.internal.pagememory.tree.BplusTree$GetPageHandler.run(BplusTree.java:6566)
at
org.apache.ignite.internal.pagememory.util.PageHandler.readPage(PageHandler.java:138)
at
org.apache.ignite.internal.pagememory.datastructure.DataStructure.read(DataStructure.java:361)
at
org.apache.ignite.internal.pagememory.tree.BplusTree.findDown(BplusTree.java:1744)
at
org.apache.ignite.internal.pagememory.tree.BplusTree.findDown(BplusTree.java:1753)
at
org.apache.ignite.internal.pagememory.tree.BplusTree.doFind(BplusTree.java:1670)
at
org.apache.ignite.internal.pagememory.tree.BplusTree.findNext(BplusTree.java:1618)
... 29 more{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)