[
https://issues.apache.org/jira/browse/IGNITE-10767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16761754#comment-16761754
]
Ivan Pavlukhin commented on IGNITE-10767:
-----------------------------------------
Test reproduces on TC after massive repeatable execution. It is possible to
reproduce test locally as well after adding some debug stuff. See TC results
for corresponding PR.
During debugging various factors were excluded. The issue reproduces on a
stable single node cluster with persistence.
It looks like there is a race during concurrent page allocation from _reuse
bucket_ by {{BPlusTree}} and {{RowStore}}.
> MVCC: Unknown page type error during scan query
> -----------------------------------------------
>
> Key: IGNITE-10767
> URL: https://issues.apache.org/jira/browse/IGNITE-10767
> Project: Ignite
> Issue Type: Bug
> Components: mvcc
> Reporter: Roman Kondakov
> Assignee: Ivan Pavlukhin
> Priority: Major
> Labels: mvcc_stabilization_stage_1, pagememory
> Fix For: 2.8
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Sometimes "Unknown page type: 1" error occurs during scan query execution.
> Reproducer:
>
> {{CacheMvccReplicatedSqlCoordinatorFailoverTest.testPutAllGetAll_SingleNode_RestartCoordinator_ScanDml_Persistence}}
> Stack trace:
> {noformat}
> junit.framework.AssertionFailedError: Unexpected error:
> junit.framework.AssertionFailedError: Unexpected tx exception.
> java.lang.IllegalStateException: Unknown page type: 1 pageId: 0001000000000079
> at
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.io(BPlusTree.java:5094)
> at
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.access$200(BPlusTree.java:90)
> at
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$AbstractForwardCursor.nextPage(BPlusTree.java:5366)
> at
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree$ForwardCursor.next(BPlusTree.java:5602)
> at
> org.apache.ignite.internal.processors.cache.IgniteCacheOffheapManagerImpl$6.onHasNext(IgniteCacheOffheapManagerImpl.java:989)
> at
> org.apache.ignite.internal.util.GridCloseableIteratorAdapter.hasNextX(GridCloseableIteratorAdapter.java:53)
> at
> org.apache.ignite.internal.util.lang.GridIteratorAdapter.hasNext(GridIteratorAdapter.java:45)
> at
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$ScanQueryIterator.advance(GridCacheQueryManager.java:2993)
> at
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryManager$ScanQueryIterator.onHasNext(GridCacheQueryManager.java:2962)
> at
> org.apache.ignite.internal.util.GridCloseableIteratorAdapter.hasNextX(GridCloseableIteratorAdapter.java:53)
> at
> org.apache.ignite.internal.util.lang.GridIteratorAdapter.hasNext(GridIteratorAdapter.java:45)
> at
> org.apache.ignite.internal.processors.cache.query.GridCacheQueryAdapter$MvccTrackingIterator.hasNext(GridCacheQueryAdapter.java:963)
> at
> org.apache.ignite.internal.processors.cache.QueryCursorImpl.getAll(QueryCursorImpl.java:114)
> at
> org.apache.ignite.internal.processors.cache.mvcc.CacheMvccAbstractTest.readAllByMode(CacheMvccAbstractTest.java:1918)
> at
> org.apache.ignite.internal.processors.cache.mvcc.CacheMvccAbstractTest$5.apply(CacheMvccAbstractTest.java:1007)
> at
> org.apache.ignite.internal.processors.cache.mvcc.CacheMvccAbstractTest$5.apply(CacheMvccAbstractTest.java:983)
> at
> org.apache.ignite.internal.processors.cache.mvcc.CacheMvccAbstractTest$10.call(CacheMvccAbstractTest.java:1362)
> at
> org.apache.ignite.internal.processors.cache.mvcc.CacheMvccAbstractTest$10.call(CacheMvccAbstractTest.java:1357)
> at
> org.apache.ignite.testframework.GridTestThread.run(GridTestThread.java:84)
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)