[
https://issues.apache.org/jira/browse/IGNITE-7964?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16402139#comment-16402139
]
ASF GitHub Bot commented on IGNITE-7964:
----------------------------------------
Github user asfgit closed the pull request at:
https://github.com/apache/ignite/pull/3645
> 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)