[ https://issues.apache.org/jira/browse/IGNITE-13949?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yaroslav Molochkov resolved IGNITE-13949. ----------------------------------------- Resolution: Duplicate > Insufficient synchronisation in PartitionUpdateCounterTrackingImpl > ------------------------------------------------------------------ > > Key: IGNITE-13949 > URL: https://issues.apache.org/jira/browse/IGNITE-13949 > Project: Ignite > Issue Type: Bug > Affects Versions: 2.9.1 > Reporter: Yaroslav Molochkov > Assignee: Yaroslav Molochkov > Priority: Major > Fix For: 2.11 > > Time Spent: 10m > Remaining Estimate: 0h > > Right now > org.apache.ignite.internal.processors.cache.PartitionUpdateCounterTrackingImpl > has 2 AtomicLong variables, cntr and reserveCntr, but there are some > methods, that are unsynchronised, e.g. next: > {code:java} > @Override public long next() { > long next = cntr.incrementAndGet(); > reserveCntr.set(next); > return next; > } {code} > Even though both are AtomicLong, operation like "get then set" is a composite > one and should be atomic in the context of an object that holds these > variables. -- This message was sent by Atlassian Jira (v8.3.4#803005)