[jira] [Updated] (IGNITE-12081) Page replacement can reload invalid page during checkpoint

2019-08-28 Thread Dmitriy Pavlov (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-12081?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitriy Pavlov updated IGNITE-12081:

Release Note: Fixed an issue that could cause data corruption during 
checkpointing

> Page replacement can reload invalid page during checkpoint
> --
>
> Key: IGNITE-12081
> URL: https://issues.apache.org/jira/browse/IGNITE-12081
> Project: Ignite
>  Issue Type: Bug
>Reporter: Dmitriy Govorukhin
>Assignee: Dmitriy Govorukhin
>Priority: Critical
>  Labels: 2.7.6-rc0
> Fix For: 2.7.6
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> There is a race between {{writeCheckpointPages}} and page replacement process:
>  * Checkpointer thread begins a checkpoint
>  * Checkpointer thread calls {{getPageForCheckpoint()}}, which will copy page 
> content *and clear dirty flag*
>  * Page replacement tries to find a page for replacement and chooses this 
> page, the page is thrown away
>  * Before the page is written back to the store, the page is acquired again.
> As a result, an older copy of the page is brought back to memory, which 
> causes all kinds of corruption exceptions and assertions.
> The attached unit test demonstrates the issue. It is likely that all 
> baselines are affected starting from 2.4
> As a part of this ticket, we must add more unit-tests for checkpointing 
> protocol invariants we rely on.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)


[jira] [Updated] (IGNITE-12081) Page replacement can reload invalid page during checkpoint

2019-08-28 Thread Dmitriy Pavlov (Jira)


 [ 
https://issues.apache.org/jira/browse/IGNITE-12081?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitriy Pavlov updated IGNITE-12081:

Ignite Flags: Docs Required,Release Notes Required  (was: Docs Required)

> Page replacement can reload invalid page during checkpoint
> --
>
> Key: IGNITE-12081
> URL: https://issues.apache.org/jira/browse/IGNITE-12081
> Project: Ignite
>  Issue Type: Bug
>Reporter: Dmitriy Govorukhin
>Assignee: Dmitriy Govorukhin
>Priority: Critical
>  Labels: 2.7.6-rc0
> Fix For: 2.7.6
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> There is a race between {{writeCheckpointPages}} and page replacement process:
>  * Checkpointer thread begins a checkpoint
>  * Checkpointer thread calls {{getPageForCheckpoint()}}, which will copy page 
> content *and clear dirty flag*
>  * Page replacement tries to find a page for replacement and chooses this 
> page, the page is thrown away
>  * Before the page is written back to the store, the page is acquired again.
> As a result, an older copy of the page is brought back to memory, which 
> causes all kinds of corruption exceptions and assertions.
> The attached unit test demonstrates the issue. It is likely that all 
> baselines are affected starting from 2.4
> As a part of this ticket, we must add more unit-tests for checkpointing 
> protocol invariants we rely on.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)


[jira] [Updated] (IGNITE-12081) Page replacement can reload invalid page during checkpoint

2019-08-18 Thread Dmitriy Pavlov (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-12081?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitriy Pavlov updated IGNITE-12081:

Labels: 2.7.6-rc0  (was: )

> Page replacement can reload invalid page during checkpoint
> --
>
> Key: IGNITE-12081
> URL: https://issues.apache.org/jira/browse/IGNITE-12081
> Project: Ignite
>  Issue Type: Bug
>Reporter: Dmitriy Govorukhin
>Assignee: Dmitriy Govorukhin
>Priority: Critical
>  Labels: 2.7.6-rc0
> Fix For: 2.7.6
>
>  Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> There is a race between {{writeCheckpointPages}} and page replacement process:
>  * Checkpointer thread begins a checkpoint
>  * Checkpointer thread calls {{getPageForCheckpoint()}}, which will copy page 
> content *and clear dirty flag*
>  * Page replacement tries to find a page for replacement and chooses this 
> page, the page is thrown away
>  * Before the page is written back to the store, the page is acquired again.
> As a result, an older copy of the page is brought back to memory, which 
> causes all kinds of corruption exceptions and assertions.
> The attached unit test demonstrates the issue. It is likely that all 
> baselines are affected starting from 2.4
> As a part of this ticket, we must add more unit-tests for checkpointing 
> protocol invariants we rely on.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)


[jira] [Updated] (IGNITE-12081) Page replacement can reload invalid page during checkpoint

2019-08-17 Thread Dmitriy Govorukhin (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-12081?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitriy Govorukhin updated IGNITE-12081:

Reviewer: Dmitriy Pavlov

> Page replacement can reload invalid page during checkpoint
> --
>
> Key: IGNITE-12081
> URL: https://issues.apache.org/jira/browse/IGNITE-12081
> Project: Ignite
>  Issue Type: Bug
>Reporter: Dmitriy Govorukhin
>Assignee: Dmitriy Govorukhin
>Priority: Critical
> Fix For: 2.7.6
>
>
> There is a race between {{writeCheckpointPages}} and page replacement process:
>  * Checkpointer thread begins a checkpoint
>  * Checkpointer thread calls {{getPageForCheckpoint()}}, which will copy page 
> content *and clear dirty flag*
>  * Page replacement tries to find a page for replacement and chooses this 
> page, the page is thrown away
>  * Before the page is written back to the store, the page is acquired again.
> As a result, an older copy of the page is brought back to memory, which 
> causes all kinds of corruption exceptions and assertions.
> The attached unit test demonstrates the issue. It is likely that all 
> baselines are affected starting from 2.4
> As a part of this ticket, we must add more unit-tests for checkpointing 
> protocol invariants we rely on.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)


[jira] [Updated] (IGNITE-12081) Page replacement can reload invalid page during checkpoint

2019-08-16 Thread Dmitriy Govorukhin (JIRA)


 [ 
https://issues.apache.org/jira/browse/IGNITE-12081?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitriy Govorukhin updated IGNITE-12081:

Fix Version/s: 2.7.6

> Page replacement can reload invalid page during checkpoint
> --
>
> Key: IGNITE-12081
> URL: https://issues.apache.org/jira/browse/IGNITE-12081
> Project: Ignite
>  Issue Type: Bug
>Reporter: Dmitriy Govorukhin
>Assignee: Dmitriy Govorukhin
>Priority: Critical
> Fix For: 2.7.6
>
>
> There is a race between {{writeCheckpointPages}} and page replacement process:
>  * Checkpointer thread begins a checkpoint
>  * Checkpointer thread calls {{getPageForCheckpoint()}}, which will copy page 
> content *and clear dirty flag*
>  * Page replacement tries to find a page for replacement and chooses this 
> page, the page is thrown away
>  * Before the page is written back to the store, the page is acquired again.
> As a result, an older copy of the page is brought back to memory, which 
> causes all kinds of corruption exceptions and assertions.
> The attached unit test demonstrates the issue. It is likely that all 
> baselines are affected starting from 2.4
> As a part of this ticket, we must add more unit-tests for checkpointing 
> protocol invariants we rely on.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)