ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pavel Kovalenko (JIRA)" <j...@apache.org>
Subject [jira] [Created] (IGNITE-10226) Partition may restore wrong MOVING state during crash recovery
Date Mon, 12 Nov 2018 15:17:00 GMT
Pavel Kovalenko created IGNITE-10226:
----------------------------------------

             Summary: Partition may restore wrong MOVING state during crash recovery
                 Key: IGNITE-10226
                 URL: https://issues.apache.org/jira/browse/IGNITE-10226
             Project: Ignite
          Issue Type: Bug
          Components: cache
    Affects Versions: 2.4
            Reporter: Pavel Kovalenko
             Fix For: 2.8


The way to get it exists only in versions that don't have IGNITE-9420:

1) Start cache, upload some data to partitions, forceCheckpoint
2) Start uploading additional data. Kill node. Node should be killed with skipping last checkpoint,
or during checkpoint mark phase.
3) Re-start node. The crash recovery process for partitions started. When we create partition
during crash recovery (topology().forceCreatePartition()) we log it's initial state to WAL.
If we have any logical update relates to partition we'll log wrong MOVING state to the end
of current WAL. This state will be considered as last valid when we process PartitionMetaStateRecord
record's during logical recovery. In "restorePartitionsState" phase this state will be chosen
as final and the partition will change to MOVING, even in page memory it has OWNING or something
else.

To fix this problem in 2.4 - 2.7 versions, additional logging partition state change to WAL
during crash recovery (logical recovery) should be removed.



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

Mime
View raw message