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

Grigory Domozhirov updated IGNITE-20665:
----------------------------------------
    Summary: DataStreamer: keep order for entries with equal keys / update such 
entries locally  (was: DataStreamer: keep order for entries with equal keys / 
replace values before streaming)

> DataStreamer: keep order for entries with equal keys / update such entries 
> locally
> ----------------------------------------------------------------------------------
>
>                 Key: IGNITE-20665
>                 URL: https://issues.apache.org/jira/browse/IGNITE-20665
>             Project: Ignite
>          Issue Type: Improvement
>          Components: streaming
>    Affects Versions: 2.15
>            Reporter: Grigory Domozhirov
>            Priority: Minor
>
> Code below returns "old value":
> {code:java}
> try (
>         Ignite ignite = Ignition.start();
>         IgniteCache<Integer, String> cache = ignite.createCache("test");
>         IgniteDataStreamer<Integer, String> dataStreamer = 
> ignite.dataStreamer(cache.getName())) {
>     dataStreamer.allowOverwrite(true);
>     for (int i = 0; i < 1000; i++) {
>         dataStreamer.addData(0, "old value");
>     }
>     dataStreamer.addData(0, "new value");
>     dataStreamer.flush();
>     System.out.println(cache.get(0));
> }
> {code}
> Despite streaming order is not guaranteed by DataStreamer such behaviour 
> might be surprising and effectively voids allowOverwrite option. 
> Also, it ends up with a lot of outdated entries streamed, decreasing overall 
> loading process.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to