ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Richa Bali (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (IGNITE-5405) Null values in comparator for EvictableEntry
Date Mon, 05 Jun 2017 10:30:04 GMT

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

Richa Bali updated IGNITE-5405:
    Attachment:     (was: Ignite_Project.7z)

> Null values in comparator for EvictableEntry
> --------------------------------------------
>                 Key: IGNITE-5405
>                 URL: https://issues.apache.org/jira/browse/IGNITE-5405
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache
>    Affects Versions: 2.0
>            Reporter: Richa Bali
>         Attachments: Ignite_Project.7z, No null value logs.txt, Null value logs.txt
> EvictableEntry has null value for corresponding key.
> We cache an object with key as a unique identifier (member variable of the object) and
value as the object itself.
> EvictionPolicy used is the SortedEvictionPolicy with our custom comparator.
> Entry is removed from cache for some keys but those entries are subsequently passed to
comparator with key but null object.
> Sample project is attached.
> Details of sample project:
> DemoEntry class containing mId and mTimeUTC. mId is the unique identifier used as key
for cache and mTimeUTC is the member variable used in DemoComparator.
> DemoComparator is used for SortedEvictionPolicy on the basis of mTimeUTC.
> IgniteEvictionListener is the listener to check if the entries are evicted.
> Sample run:
> DemoProject:
> 10 entries are added to cache for which the eviction policy used is SortedEvictionPolicy
on the basis of DemoComparator. Size is set to 5.
> 2 of the entries are removed and data in cache is printed.
> Note: Removed keys are not used to fetch the data from cache.
> Observations:
> Sometimes, null value for the key (not null key) is passed to comparator. Since the data
used in sample project is limited to 10 entries only, it is not reproducible in all the runs.
It occurs sometimes (may be because of asynchronous behavior).
> But if we try to retrieve even the removed value by commenting lines 62-64 of DemoProject,
it is usually reproducible.
> Attached are the sample logs where we retrieved only those values that were not removed.
> "Null value logs.txt": logs when null value scenario occurred.
> "No null value logs.txt": logs when null value scenario didn't occur.
> Sample project is also attached. 

This message was sent by Atlassian JIRA

View raw message