Nikita Amelchev created IGNITE-29249:
----------------------------------------

             Summary: Reduce allocations on the cache get path
                 Key: IGNITE-29249
                 URL: https://issues.apache.org/jira/browse/IGNITE-29249
             Project: Ignite
          Issue Type: Improvement
            Reporter: Nikita Amelchev
            Assignee: Nikita Amelchev


Two sources of pure overhead on the hottest cache path:

*DHT side of a remote get.* {{GridDhtGetFuture}} and {{GridDhtGetSingleFuture}} 
allocate a future ID and a new cache version that nobody reads. The version 
counter is bumped under contention for every read.

*Cluster state check on every cache operation.* Each operation on a cache proxy 
calls {{{}publicApiState{}}}, which builds a finished future and a chain even 
when no state transition is in progress, i.e. in the normal steady state of the 
cluster.

Both can be removed without changing the behaviour.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to