You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Nikolay Izhikov (Jira)" <ji...@apache.org> on 2021/04/12 08:51:00 UTC
[jira] [Created] (IGNITE-14516) WAL can continue to log into
archived segment if auto rollover enabled
Nikolay Izhikov created IGNITE-14516:
----------------------------------------
Summary: WAL can continue to log into archived segment if auto rollover enabled
Key: IGNITE-14516
URL: https://issues.apache.org/jira/browse/IGNITE-14516
Project: Ignite
Issue Type: Improvement
Reporter: Nikolay Izhikov
Currently, there is a possibility that WAL will continue to log into an archived segment after node restart.
Bug scenario:
# {{WalAutoArchiveAfterInactivity}} enabled.
# Node is stopping with the {{G.stop("ign", false")}}.
# T0: Performs last checkpoint write some records to current WAL segment({{Segment#0}}) and freeze.
# T1: Auto rollover happens in {{FileWriteAheadLogManager#checkWalRolloverRequiredDuringInactivityPeriod}}.
# T2({{FileArchiver}}) Archives {{Segment#0}}.
After restart, WAL will continue to log into {{Segment#0}} which leads that newly logged data will not be archived after rollover because {{FileArchiver}} will wait for {{Segment#2}} in {{SegmentCurrentStateStorage#waitNextSegmentForArchivation}}.
PR to highlight error - https://github.com/apache/ignite/pull/8997
It seems we should to continue to log into the next segment if {{curAbsIdx == lastArchivedSegment}} on start.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)