[ https://issues.apache.org/jira/browse/IGNITE-13265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17190615#comment-17190615 ]
Ignite TC Bot commented on IGNITE-13265: ---------------------------------------- {panel:title=Branch: [pull/8048/head] Base: [master] : No blockers found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel} {panel:title=Branch: [pull/8048/head] Base: [master] : New Tests (6)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1} {color:#00008b}MVCC PDS 4{color} [[tests 3|https://ci.ignite.apache.org/viewLog.html?buildId=5581430]] * {color:#013220}IgnitePdsMvccTestSuite4: SupplyPartitionHistoricallyWithReorderedUpdates.testLoosingUpdateSupplyLatestUpdates - PASSED{color} * {color:#013220}IgnitePdsMvccTestSuite4: SupplyPartitionHistoricallyWithReorderedUpdates.testLoosingCreateSupplyLatestUpdates - PASSED{color} * {color:#013220}IgnitePdsMvccTestSuite4: SupplyPartitionHistoricallyWithReorderedUpdates.testMarginGoesOutOfReservation - PASSED{color} {color:#00008b}PDS 4{color} [[tests 3|https://ci.ignite.apache.org/viewLog.html?buildId=5581403]] * {color:#013220}IgnitePdsTestSuite4: SupplyPartitionHistoricallyWithReorderedUpdates.testLoosingCreateSupplyLatestUpdates - PASSED{color} * {color:#013220}IgnitePdsTestSuite4: SupplyPartitionHistoricallyWithReorderedUpdates.testLoosingUpdateSupplyLatestUpdates - PASSED{color} * {color:#013220}IgnitePdsTestSuite4: SupplyPartitionHistoricallyWithReorderedUpdates.testMarginGoesOutOfReservation - PASSED{color} {panel} [TeamCity *--> Run :: All* Results|https://ci.ignite.apache.org/viewLog.html?buildId=5581439&buildTypeId=IgniteTests24Java8_RunAll] > Historical iterator for atomic group should transfer few more rows than > required > -------------------------------------------------------------------------------- > > Key: IGNITE-13265 > URL: https://issues.apache.org/jira/browse/IGNITE-13265 > Project: Ignite > Issue Type: Improvement > Reporter: Vladislav Pyatkov > Assignee: Vladislav Pyatkov > Priority: Major > Time Spent: 3.5h > Remaining Estimate: 0h > > On a historical rebalance some updates move from one node to another wherein > this update may have various order in nodes. Reordering can happen in smell > interval, but it cannot avoid at all in current implementation atomic > protocol. > This mean we will reduce a probably of loosing update if we make a margin > from initial counter for the historical iterator on atomic cache. > The final algorithm of choosing correct WAL pointer for atomic cache with the > margin is: > 1) Find a checkpoint which contains a counter, that necessary for history > rebalance (just like a transactional cache) > 2) If the checkpoint starts with a counter less than which is necessary with > margin, we are taking it. > 3) If we are going out of WAL reservation, we are taking current. > 4) Otherwise we are looking of a previous checkpoint and taking it if it > starts from a counter less than next checkpoint (from the point 2). > 5) Else we are still taking the checkpoint from the point 2. > Other words (points 3-5) the algorithm tries to check only one previous > checkpoint and takes it if that has different counter. > *UPD:* > After a discussion I found a bug connected with using a WAL which was not > reserved before for preloading. > I added an explicitly checking this and an appropriate test. -- This message was sent by Atlassian Jira (v8.3.4#803005)