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

ASF GitHub Bot commented on IGNITE-7964:
----------------------------------------

GitHub user sergey-chugunov-1985 opened a pull request:

    https://github.com/apache/ignite/pull/3645

    IGNITE-7964 rmvId is stored to MetaStorage metapage during operations

    

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/gridgain/apache-ignite ignite-7964

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/ignite/pull/3645.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #3645
    
----
commit f63635eece62be3ce5f581d7a981da36985775a2
Author: Sergey Chugunov <sergey.chugunov@...>
Date:   2018-03-16T08:57:18Z

    IGNITE-7964 rmvId is stored to MetaStorage metapage during operations

----


> Read a key from metastorage may hang on node restart
> ----------------------------------------------------
>
>                 Key: IGNITE-7964
>                 URL: https://issues.apache.org/jira/browse/IGNITE-7964
>             Project: Ignite
>          Issue Type: Bug
>          Components: persistence
>    Affects Versions: 2.4
>            Reporter: Sergey Chugunov
>            Assignee: Sergey Chugunov
>            Priority: Major
>             Fix For: 2.5
>
>
> MetaStorage handles *rmvId* counter incorrectly: it is not propagated to 
> metapage and is not persisted to disk; on restart *rmvId* is set to 0 which 
> leads to incorrect initialization of BPlusTree where all keys live.
> As a consequence if there are more than 52 keys and more than 31 of them get 
> updated than on next restart node hangs on attempt to read BaselineTopology 
> info from metastore (because of endless looping inside BPlusTree starting 
> from the root over and over again).
> h2. Steps to reproduce
>  # Start single node with persistence enabled.
>  # Put 60 keys to metastore, update 40 of them.
>  # Restart node.
> h2. Expected behavior
> Node starts just fine.
> h2. Actual behavior
> Node hangs, thread dump of starting thread shows looping on reading 
> BaselineTopology from metastore.
> h2. Workaround
> No impact if no more than 52 keys are stored in metastore or keys are never 
> updated.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to