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

wangpeibin updated IGNITE-5782:
-------------------------------
    Description: 
I use a ignite slide window with FifoEvictionPolicy before with ignite 1.9.0
right now I migration to ingite 2.0.0 according 
ApacheIgnite2.0MigrationGuide-CacheMemoryMode 
but I find the window does not evict the entry successful.

I write a unit test code below:

{code:java}
      try (Ignite ignite = Ignition.start("default-config.xml")) {
            CacheConfiguration cacheConfiguration = new CacheConfiguration();
            cacheConfiguration.setCacheMode(CacheMode.REPLICATED);
            cacheConfiguration.setName("Test");

            // for ignite 1.9.0
            // cacheConfiguration.setMemoryMode(CacheMemoryMode.ONHEAP_TIERED);
            // for ignite 2.0.0
            cacheConfiguration.setOnheapCacheEnabled(true);
            

            cacheConfiguration.setEvictionPolicy(new FifoEvictionPolicy(5));
            IgniteCache<Object, Object> cache = 
ignite.getOrCreateCache(cacheConfiguration);
            for(Integer i = 0; i < 10; i++) {
                Map<Object, Object> value = new HashMap<>();
                value.put("key", i.toString());
                value.put("value", 1);
                cache.put(i.toString(), value);
            }

            cache.forEach(objectObjectEntry -> {
                System.out.println(objectObjectEntry);
    
            });
        }
        System.out.println("finished");
{code}

        


with ignite 1.9.0 the output is
{code:java}
Entry [key=5, val={value=1, key=5}]
Entry [key=6, val={value=1, key=6}]
Entry [key=7, val={value=1, key=7}]
Entry [key=8, val={value=1, key=8}]
Entry [key=9, val={value=1, key=9}]
{code}

with ignite 2.0.0 the output is
{code:java}
Entry [key=0, val={value=1, key=0}]
Entry [key=1, val={value=1, key=1}]
Entry [key=2, val={value=1, key=2}]
Entry [key=3, val={value=1, key=3}]
Entry [key=4, val={value=1, key=4}]
Entry [key=5, val={value=1, key=5}]
Entry [key=6, val={value=1, key=6}]
Entry [key=7, val={value=1, key=7}]
Entry [key=8, val={value=1, key=8}]
Entry [key=9, val={value=1, key=9}]
{code}


  was:
I use a ignite slide window with FifoEvictionPolicy before with ignite 1.9.0
right now I migration to ingite 2.0.0 according 
ApacheIgnite2.0MigrationGuide-CacheMemoryMode 
but I find the window does not evict the entry successful.

I write a unit test code below:
```
        try (Ignite ignite = Ignition.start("default-config.xml")) {
            CacheConfiguration cacheConfiguration = new CacheConfiguration();
            cacheConfiguration.setCacheMode(CacheMode.REPLICATED);
            cacheConfiguration.setName("Test");

            // for ignite 1.9.0
            // cacheConfiguration.setMemoryMode(CacheMemoryMode.ONHEAP_TIERED);
            // for ignite 2.0.0
            cacheConfiguration.setOnheapCacheEnabled(true);
            

            cacheConfiguration.setEvictionPolicy(new FifoEvictionPolicy(5));
            IgniteCache<Object, Object> cache = 
ignite.getOrCreateCache(cacheConfiguration);
            for(Integer i = 0; i < 10; i++) {
                Map<Object, Object> value = new HashMap<>();
                value.put("key", i.toString());
                value.put("value", 1);
                cache.put(i.toString(), value);
            }

            cache.forEach(objectObjectEntry -> {
                System.out.println(objectObjectEntry);
    
            });
        }
        System.out.println("finished");
```

with ignite 1.9.0 the output is
```
Entry [key=5, val={value=1, key=5}]
Entry [key=6, val={value=1, key=6}]
Entry [key=7, val={value=1, key=7}]
Entry [key=8, val={value=1, key=8}]
Entry [key=9, val={value=1, key=9}]
```
with ignite 2.0.0 the output is
```
Entry [key=0, val={value=1, key=0}]
Entry [key=1, val={value=1, key=1}]
Entry [key=2, val={value=1, key=2}]
Entry [key=3, val={value=1, key=3}]
Entry [key=4, val={value=1, key=4}]
Entry [key=5, val={value=1, key=5}]
Entry [key=6, val={value=1, key=6}]
Entry [key=7, val={value=1, key=7}]
Entry [key=8, val={value=1, key=8}]
Entry [key=9, val={value=1, key=9}]
```


>  FifoEvictionPolicy does not work with ignite 2.0.0
> ---------------------------------------------------
>
>                 Key: IGNITE-5782
>                 URL: https://issues.apache.org/jira/browse/IGNITE-5782
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: 2.0
>            Reporter: wangpeibin
>
> I use a ignite slide window with FifoEvictionPolicy before with ignite 1.9.0
> right now I migration to ingite 2.0.0 according 
> ApacheIgnite2.0MigrationGuide-CacheMemoryMode 
> but I find the window does not evict the entry successful.
> I write a unit test code below:
> {code:java}
>       try (Ignite ignite = Ignition.start("default-config.xml")) {
>             CacheConfiguration cacheConfiguration = new CacheConfiguration();
>             cacheConfiguration.setCacheMode(CacheMode.REPLICATED);
>             cacheConfiguration.setName("Test");
>             // for ignite 1.9.0
>             // 
> cacheConfiguration.setMemoryMode(CacheMemoryMode.ONHEAP_TIERED);
>             // for ignite 2.0.0
>             cacheConfiguration.setOnheapCacheEnabled(true);
>             
>             cacheConfiguration.setEvictionPolicy(new FifoEvictionPolicy(5));
>             IgniteCache<Object, Object> cache = 
> ignite.getOrCreateCache(cacheConfiguration);
>             for(Integer i = 0; i < 10; i++) {
>                 Map<Object, Object> value = new HashMap<>();
>                 value.put("key", i.toString());
>                 value.put("value", 1);
>                 cache.put(i.toString(), value);
>             }
>             cache.forEach(objectObjectEntry -> {
>                 System.out.println(objectObjectEntry);
>     
>             });
>         }
>         System.out.println("finished");
> {code}
>         
> with ignite 1.9.0 the output is
> {code:java}
> Entry [key=5, val={value=1, key=5}]
> Entry [key=6, val={value=1, key=6}]
> Entry [key=7, val={value=1, key=7}]
> Entry [key=8, val={value=1, key=8}]
> Entry [key=9, val={value=1, key=9}]
> {code}
> with ignite 2.0.0 the output is
> {code:java}
> Entry [key=0, val={value=1, key=0}]
> Entry [key=1, val={value=1, key=1}]
> Entry [key=2, val={value=1, key=2}]
> Entry [key=3, val={value=1, key=3}]
> Entry [key=4, val={value=1, key=4}]
> Entry [key=5, val={value=1, key=5}]
> Entry [key=6, val={value=1, key=6}]
> Entry [key=7, val={value=1, key=7}]
> Entry [key=8, val={value=1, key=8}]
> Entry [key=9, val={value=1, key=9}]
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to