Darrel Schneider created GEODE-6755:
---------------------------------------
Summary: AbstractUpdateOperation.doPutOrCreate calls basicUpdate
twice
Key: GEODE-6755
URL: https://issues.apache.org/jira/browse/GEODE-6755
Project: Geode
Issue Type: Improvement
Components: core
Reporter: Darrel Schneider
On a partitioned region put benchmark (with redundancy), I noticed that
AbstractUpdateOperation.doPutOrCreate calls basicUpdate twice. The first time
is to see if it can be a create. If it is then it is done. But in the case of
an update this first call "fails" and we then call basicUpdate again this time
telling it to do an update instead of a create.
It seems like this code could be optimized. In my benchmark most of the puts
are updates. In that case I see the first call to basicUpdate accounting for 3%
of all the object allocations. These are all garbage and end up being done
again when we call basicUpdate the second time. In addition to these
allocations, that first call also takes some amount of cpu. I think the first
calls gets all the way down to having the entry synced and then figures out it
exists and "fails" since it is not a create.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)