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

Dmitriy Sorokin commented on IGNITE-8625:
-----------------------------------------

I investigated this issue using the attached reproducer and ready to list 
several facts:

1. Before the fix IGNITE-4958 (change {{0bdfa20c}}) the test failed with AE on 
code line
{code:java}
    assert len >= 0;
{code}
of method {{PageUtils#getBytes(long, int, int)}}, sometimes causing the JVM 
crash on further execution;

2. After the fix IGNITE-4958 till the IGNITE-12061 (change {{dde81742}}) the 
test failed with AE on code line
{code:java}
    assert pageAddr != 0L : nextLink;
{code}
of method {{CacheDataRowAdapter#initFromLink(CacheGroupContext, 
GridCacheSharedContext, PageMemory, RowData)}} 
({{CacheDataRowAdapter#doInitFromLink(...)}} since the fix IGNITE-10798, change 
{{bc209d08}});

3. Finally, since the fix IGNITE-12061 till the current master branch the test 
stopped falling, so I think that this issue was fixed too.

> Dynamic SQL index recreate after cache clear may result in AssertionError or 
> JVM crash
> --------------------------------------------------------------------------------------
>
>                 Key: IGNITE-8625
>                 URL: https://issues.apache.org/jira/browse/IGNITE-8625
>             Project: Ignite
>          Issue Type: Bug
>          Components: persistence, sql
>            Reporter: Ivan Rakov
>            Assignee: Dmitriy Sorokin
>            Priority: Critical
>              Labels: MakeTeamcityGreenAgain, sql-stability
>             Fix For: 2.9, 2.8.1
>
>         Attachments: dyn_idx_reproducer.patch
>
>
> After recreation of previously dropped SQL index (in persistent mode), root 
> page of new index B+ tree may contain links to data entries from previous 
> index tree. If these entries were removed or relocated to another data page, 
> attempt to dereference these links may throw AssertionError or even cause JVM 
> crash.
> Patch with reproducer is attached.
> P.S. Please note that with IGNITE-4958 fix old invalid links may refer to 
> non-data page - it might have been recycled into page with any other type. 
> Such case will cause AssertionError on page read lock attempt. Rolling back 
> IGNITE-4958 may help with debugging.



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

Reply via email to