ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Semen Boikov (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (IGNITE-614) Race in preloading/unswapping
Date Fri, 27 Mar 2015 10:05:53 GMT

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

Semen Boikov updated IGNITE-614:
--------------------------------
    Description: 
During unswap entry is removed from swap then unswap listener is notified, and this logic
in preload supply worker:
- register unswap listener
- iterater over heap
- iterate over swap
- remove unswap listener
- iterate over entries recorded by unswap listener

There is a race: entry is removed from unswap, listener is not notified yet, at this moment
supply worker removes unswap listener.

These tests fail from time to time because entry can be missed during preloading:
GridCacheSwapPreloadSelfTest.testSwapPartitionedMultithreaded
GridCacheSwapPreloadSelfTest.testSwapReplicatedMultithreaded

  was:
During unswap entry is removed from swap then unswap listener is notified, and this logic
in preload supply worker:
- register unswap listener
- iterater over heap
- iterate over swap
- remove unswap listener
- iterate over entries recorded by unswap listener

There is a race: entry is rmoved from unswap, listener is not notified yet, at this moment
supply worker remvoes unswap listener.

These tests fail from time to time because entry can be missed:
GridCacheSwapPreloadSelfTest.testSwapPartitionedMultithreaded
GridCacheSwapPreloadSelfTest.testSwapReplicatedMultithreaded


> Race in preloading/unswapping
> -----------------------------
>
>                 Key: IGNITE-614
>                 URL: https://issues.apache.org/jira/browse/IGNITE-614
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>            Reporter: Semen Boikov
>            Assignee: Yakov Zhdanov
>            Priority: Critical
>             Fix For: sprint-3
>
>
> During unswap entry is removed from swap then unswap listener is notified, and this logic
in preload supply worker:
> - register unswap listener
> - iterater over heap
> - iterate over swap
> - remove unswap listener
> - iterate over entries recorded by unswap listener
> There is a race: entry is removed from unswap, listener is not notified yet, at this
moment supply worker removes unswap listener.
> These tests fail from time to time because entry can be missed during preloading:
> GridCacheSwapPreloadSelfTest.testSwapPartitionedMultithreaded
> GridCacheSwapPreloadSelfTest.testSwapReplicatedMultithreaded



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message