[ 
https://issues.apache.org/jira/browse/IGNITE-20821?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17784936#comment-17784936
 ] 

Ivan Bessonov commented on IGNITE-20821:
----------------------------------------

I think this is important. We couldn't read the page due to concurrent 
delta-file merge, presumably.
{code:java}
Caused by: org.apache.ignite.internal.storage.StorageException: IGN-STORAGE-1 
TraceId:23cc076f-934a-448f-8a84-cc191b1ab6b0 Row version lookup failed: 
[rowId=RowId [partitionId=2, uuid=c18be8d8-e29d-4be9-9238-e85a8a18a3b9], 
tableId=5, partitionId=2]
    at 
org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.findVersionChain(AbstractPageMemoryMvPartitionStorage.java:879)
    at 
org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.lambda$read$8(AbstractPageMemoryMvPartitionStorage.java:332)
    at 
org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.busy(AbstractPageMemoryMvPartitionStorage.java:749)
    at 
org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.read(AbstractPageMemoryMvPartitionStorage.java:324)
    at 
org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.resolveRowByPkForReadOnly(PartitionReplicaListener.java:1843)
    ... 43 more
Caused by: org.apache.ignite.internal.lang.IgniteInternalCheckedException: 
IGN-CMN-65535 TraceId:23cc076f-934a-448f-8a84-cc191b1ab6b0 Runtime failure on 
lookup row: 
org.apache.ignite.internal.storage.pagememory.mv.VersionChainKey@379927d6
    at 
org.apache.ignite.internal.pagememory.tree.BplusTree.findOne(BplusTree.java:1578)
    at 
org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.findVersionChain(AbstractPageMemoryMvPartitionStorage.java:870)
    ... 47 more
Caused by: org.apache.ignite.internal.lang.IgniteInternalCheckedException: 
IGN-CMN-65535 TraceId:23cc076f-934a-448f-8a84-cc191b1ab6b0 Failed to read page 
[file=/opt/pubagent/poc/poc-tester-SERVER-192.168.1.63-id-0/db/db/table-5/part-2-delta-33.bin,
 pageId=562958543400296]
    at 
org.apache.ignite.internal.pagememory.persistence.store.AbstractFilePageStoreIo.read0(AbstractFilePageStoreIo.java:521)
    at 
org.apache.ignite.internal.pagememory.persistence.store.AbstractFilePageStoreIo.read(AbstractFilePageStoreIo.java:148)
    at 
org.apache.ignite.internal.pagememory.persistence.store.DeltaFilePageStoreIo.readWithMergedToFilePageStoreCheck(DeltaFilePageStoreIo.java:142)
    at 
org.apache.ignite.internal.pagememory.persistence.store.FilePageStore.readWithoutPageIdCheck(FilePageStore.java:176)
    at 
org.apache.ignite.internal.pagememory.persistence.store.FilePageStore.read(FilePageStore.java:189)
    at 
org.apache.ignite.internal.pagememory.persistence.store.FilePageStoreManager.read(FilePageStoreManager.java:229)
    at 
org.apache.ignite.internal.pagememory.persistence.PersistentPageMemory.acquirePage(PersistentPageMemory.java:805)
    at 
org.apache.ignite.internal.pagememory.persistence.PersistentPageMemory.acquirePage(PersistentPageMemory.java:637)
    at 
org.apache.ignite.internal.pagememory.persistence.PersistentPageMemory.acquirePage(PersistentPageMemory.java:609)
    at 
org.apache.ignite.internal.pagememory.datastructure.DataStructure.acquirePage(DataStructure.java:209)
    at 
org.apache.ignite.internal.pagememory.tree.BplusTree.acquirePage(BplusTree.java:6647)
    at 
org.apache.ignite.internal.pagememory.tree.BplusTree.findDown(BplusTree.java:1644)
    at 
org.apache.ignite.internal.pagememory.tree.BplusTree.findDown(BplusTree.java:1663)
    at 
org.apache.ignite.internal.pagememory.tree.BplusTree.findDown(BplusTree.java:1663)
    at 
org.apache.ignite.internal.pagememory.tree.BplusTree.doFind(BplusTree.java:1632)
    at 
org.apache.ignite.internal.pagememory.tree.BplusTree.findOne(BplusTree.java:1572)
    ... 48 more
Caused by: java.io.IOException: java.nio.channels.AsynchronousCloseException
    at org.apache.ignite.internal.fileio.AsyncFileIo.read(AsyncFileIo.java:96)
    at 
org.apache.ignite.internal.fileio.AbstractFileIo.lambda$readFully$1(AbstractFileIo.java:40)
    at 
org.apache.ignite.internal.fileio.AbstractFileIo.fully(AbstractFileIo.java:107)
    at 
org.apache.ignite.internal.fileio.AbstractFileIo.readFully(AbstractFileIo.java:40)
    at 
org.apache.ignite.internal.pagememory.persistence.store.AbstractFilePageStoreIo.readWithFailover(AbstractFilePageStoreIo.java:547)
    at 
org.apache.ignite.internal.pagememory.persistence.store.AbstractFilePageStoreIo.read0(AbstractFilePageStoreIo.java:487)
    ... 63 more
Caused by: java.nio.channels.AsynchronousCloseException
    at 
java.base/sun.nio.ch.SimpleAsynchronousFileChannelImpl$2.run(SimpleAsynchronousFileChannelImpl.java:326)
    ... 3 more {code}

> Sporadic exception on KeyValueView#get
> --------------------------------------
>
>                 Key: IGNITE-20821
>                 URL: https://issues.apache.org/jira/browse/IGNITE-20821
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache, clients
>            Reporter: Ivan Artiukhov
>            Priority: Major
>              Labels: ignite-3, ignite3_performance
>         Attachments: run269-logs.zip
>
>
> AI3, rev. 8ebd9e842a2aaec5e1ae7e3b5e1cb36a040dc565
> Benchmark: 
> [https://github.com/gridgain/YCSB/blob/ycsb-2023.7/ignite3/src/main/java/site/ycsb/db/ignite3/IgniteClient.java]
>  
> Cluster setup: 1 server node, aipersist, 25 partitions, raft.fsync=false
> h1. Steps
> Run the mentioned key-value benchmark to preload data (10 million unique 
> keys):
>  
> {noformat}
> Command line: -db site.ycsb.db.ignite3.IgniteClient -load -P 
> /opt/pubagent/poc/config/ycsb/workloads/workloadc -threads 1 -p 
> recordcount=250000 -p warmupops=50000 -p dataintegrity=true -p 
> measurementtype=timeseries -p status.interval=1 -p hosts=192.168.1.63 -p 
> recordcount=10000000 -p operationcount=10000000 -s
> {noformat}
> Observe that all 10M keys have been loaded:
>  
>  
> {noformat}
> [INSERT], Return=OK, 10000000
> {noformat}
>  Run the 100% get operations over preloaded data:
>  
> {noformat}
> Command line: -db site.ycsb.db.ignite3.IgniteClient -t -P 
> /opt/pubagent/poc/config/ycsb/workloads/workloadc -threads 1 -p 
> operationcount=250000 -p recordcount=250000 -p warmupops=50000 -p 
> dataintegrity=true -p measurementtype=timeseries -p status.interval=1 -p 
> hosts=192.168.1.63 -p recordcount=10000000 -p operationcount=10000000 -s
> {noformat}
> h1. Expected result
> All 10M keys were read without errors
> h1. Actual result
> Reading 4341 keys out of 10M keys failed with exception like the following 
> one:
> {noformat}
> Caused by: org.apache.ignite.internal.storage.StorageException: IGN-STORAGE-1 
> TraceId:069639f9-b2b9-4690-b066-3ca0bf2e9e06 Row version lookup failed: 
> [rowId=RowId [partitionId=2, uuid=c18be8d8-e29d-4be9-9238-e85a8a18a3b9], 
> tableId=5, partitionId=2]
>       at 
> org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.findVersionChain(AbstractPageMemoryMvPartitionStorage.java:879)
>       at 
> org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.lambda$read$8(AbstractPageMemoryMvPartitionStorage.java:332)
>       at 
> org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.busy(AbstractPageMemoryMvPartitionStorage.java:749)
>       at 
> org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.read(AbstractPageMemoryMvPartitionStorage.java:324)
>       at 
> org.apache.ignite.internal.table.distributed.replicator.PartitionReplicaListener.resolveRowByPkForReadOnly(PartitionReplicaListener.java:1843)
>       ... 43 more
> Caused by: org.apache.ignite.internal.pagememory.tree.CorruptedTreeException: 
> IGN-CMN-65535 TraceId:069639f9-b2b9-4690-b066-3ca0bf2e9e06 B+Tree is 
> corrupted [groupId=5, pageIds=[562958543400296], groupName=5, msg=Runtime 
> failure on lookup row: 
> org.apache.ignite.internal.storage.pagememory.mv.VersionChainKey@1b8df27b]
>       at 
> org.apache.ignite.internal.pagememory.tree.BplusTree.corruptedTreeException(BplusTree.java:6724)
>       at 
> org.apache.ignite.internal.pagememory.tree.BplusTree.findOne(BplusTree.java:1580)
>       at 
> org.apache.ignite.internal.storage.pagememory.mv.AbstractPageMemoryMvPartitionStorage.findVersionChain(AbstractPageMemoryMvPartitionStorage.java:870)
>       ... 47 more
> Caused by: java.lang.AssertionError
>       at 
> org.apache.ignite.internal.pagememory.tree.BplusTree$GetPageHandler.run(BplusTree.java:6464)
>       at 
> org.apache.ignite.internal.pagememory.tree.BplusTree$Search.run(BplusTree.java:369)
>       at 
> org.apache.ignite.internal.pagememory.tree.BplusTree$GetPageHandler.run(BplusTree.java:6451)
>       at 
> org.apache.ignite.internal.pagememory.util.PageHandler.readPage(PageHandler.java:157)
>       at 
> org.apache.ignite.internal.pagememory.datastructure.DataStructure.read(DataStructure.java:417)
>       at 
> org.apache.ignite.internal.pagememory.tree.BplusTree.read(BplusTree.java:6693)
>       at 
> org.apache.ignite.internal.pagememory.tree.BplusTree.findDown(BplusTree.java:1654)
>       at 
> org.apache.ignite.internal.pagememory.tree.BplusTree.findDown(BplusTree.java:1663)
>       at 
> org.apache.ignite.internal.pagememory.tree.BplusTree.findDown(BplusTree.java:1663)
>       at 
> org.apache.ignite.internal.pagememory.tree.BplusTree.doFind(BplusTree.java:1632)
>       at 
> org.apache.ignite.internal.pagememory.tree.BplusTree.findOne(BplusTree.java:1572)
>       ... 48 more
> {noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to