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

Ignite TC Bot commented on IGNITE-15026:
----------------------------------------

{panel:title=Branch: [pull/9207/head] Base: [master] : No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/9207/head] Base: [master] : New Tests 
(13)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#00008b}PDS (Indexing){color} [[tests 
12|https://ci.ignite.apache.org/viewLog.html?buildId=6100112]]
* {color:#013220}IgnitePdsWithIndexingTestSuite: 
DropIndexTest.testDonotAddTaskOnDeactivateForInMemory - PASSED{color}
* {color:#013220}IgnitePdsWithIndexingTestSuite: 
DropIndexTest.testExecuteTaskOnDropIdxAfterReActivatedForInMemory - 
PASSED{color}
* {color:#013220}IgnitePdsWithIndexingTestSuite: 
DropIndexTest.testExecuteTaskOnDropIdxForInMemory - PASSED{color}
* {color:#013220}IgnitePdsWithIndexingTestSuite: 
DropIndexTest.testDestroyIndexTreesForInMemory - PASSED{color}
* {color:#013220}IgnitePdsWithIndexingTestSuite: 
DropIndexTest.testExecuteTaskOnDropIdxAfterReActivated - PASSED{color}
* {color:#013220}IgnitePdsWithIndexingTestSuite: 
DropIndexTest.testCorrectTaskExecute - PASSED{color}
* {color:#013220}IgnitePdsWithIndexingTestSuite: 
DropIndexTest.testDestroyIndexTrees - PASSED{color}
* {color:#013220}IgnitePdsWithIndexingTestSuite: 
DropIndexTest.testTaskNotExecuteIfAbsentCacheGroupOrRootPages - PASSED{color}
* {color:#013220}IgnitePdsWithIndexingTestSuite: 
DropIndexTest.testExecuteTaskOnDropIdxAfterRestart - PASSED{color}
* {color:#013220}IgnitePdsWithIndexingTestSuite: 
DropIndexTest.testExecuteTaskOnDropIdx - PASSED{color}
* {color:#013220}IgnitePdsWithIndexingTestSuite: 
RenameIndexTreeTest.testRenameFromTask - PASSED{color}
... and 1 new tests

{color:#00008b}PDS 1{color} [[tests 
1|https://ci.ignite.apache.org/viewLog.html?buildId=6100114]]
* {color:#013220}IgnitePdsTestSuite: 
DurableBackgroundTasksProcessorSelfTest.testConvertAfterRestoreIfNeeded - 
PASSED{color}

{panel}
[TeamCity *--> Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=6100144&buildTypeId=IgniteTests24Java8_RunAll]

> Remove storage of physical page ids in a DurableBackgroundCleanupIndexTreeTask
> ------------------------------------------------------------------------------
>
>                 Key: IGNITE-15026
>                 URL: https://issues.apache.org/jira/browse/IGNITE-15026
>             Project: Ignite
>          Issue Type: Improvement
>          Components: persistence, sql
>            Reporter: Kirill Tkalenko
>            Assignee: Kirill Tkalenko
>            Priority: Major
>             Fix For: 2.12
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> DurableBackgroundCleanupIndexTreeTask does one bad thing - it stores page id 
> into a logical metastorage record. BUT, there are no guarantees that this 
> page exists in current checkpoint state on the storage device.
> Imagine that someone waits for checkpoint, then before the next checkpoint 
> they create SQL index, then drop it and end the process with "kill -9". 
> There's a chance that something like this could happen by accident.
> Then page id in DurableBackgroundCleanupIndexTreeTask will either point to a 
> nonexistent page (trace 1) or to the existing page that has nothing to do 
> with meta tree (trace 2).
> {noformat}
> java.lang.ArrayIndexOutOfBoundsException: 4937
>       at 
> org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.getStore(FilePageStoreManager.java:1085)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.pagemem.PageReadWriteManagerImpl.read(PageReadWriteManagerImpl.java:65)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.file.FilePageStoreManager.read(FilePageStoreManager.java:510)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.pagemem.PageMemoryImpl.acquirePage(PageMemoryImpl.java:871)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.pagemem.PageMemoryImpl.acquirePage(PageMemoryImpl.java:697)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.pagemem.PageMemoryImpl.acquirePage(PageMemoryImpl.java:686)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.DataStructure.acquirePage(DataStructure.java:185)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.acquirePage(BPlusTree.java:6061)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.destroyDownPages(BPlusTree.java:2607)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.tree.BPlusTree.destroy(BPlusTree.java:2555)
>       at 
> org.apache.ignite.internal.processors.query.h2.DurableBackgroundCleanupIndexTreeTask.execute(DurableBackgroundCleanupIndexTreeTask.java:231)
>       at 
> org.apache.ignite.internal.processors.localtask.DurableBackgroundTasksProcessor$1.body(DurableBackgroundTasksProcessor.java:121)
>       at 
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:119)
>       at java.lang.Thread.run(Thread.java:748)
> {noformat}
> {noformat}
> 4d11-9351-08a40b89548c
> java.lang.IllegalStateException: Failed to get page IO instance (page content 
> is corrupted)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.tree.io.IOVersions.forVersion(IOVersions.java:84)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.tree.io.IOVersions.forPage(IOVersions.java:96)
>       at 
> org.apache.ignite.internal.processors.query.h2.database.H2Tree.getMetaInfo(H2Tree.java:508)
>       at 
> org.apache.ignite.internal.processors.query.h2.database.H2Tree.<init>(H2Tree.java:240)
>       at 
> org.apache.ignite.internal.processors.query.h2.DurableBackgroundCleanupIndexTreeTask$H2TreeToDestroy.<init>(DurableBackgroundCleanupIndexTreeTask.java:359)
>       at 
> org.apache.ignite.internal.processors.query.h2.DurableBackgroundCleanupIndexTreeTask.execute(DurableBackgroundCleanupIndexTreeTask.java:208)
>       at 
> org.apache.ignite.internal.processors.localtask.DurableBackgroundTasksProcessor$1.body(DurableBackgroundTasksProcessor.java:121)
>       at 
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:119)
>       at java.lang.Thread.run(Thread.java:748)
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to