Hi all,

As you might know I'm working since my arrival, among other things, on ISPN-5728 Jira [1], where the idea is to override the default ConcurrentMap methods that are missing in CacheImpl (merge, replaceAll, compute ... )

I've created a pull-request [2] for compute, computeIfAbsent and computeIfPresent methods, creating two new commands. By the way, I did the same thing for the merge method in a branch that I haven't pull requested yet.

There is an opposite view between Radim and Will concerning the implementation of these methods. To make it short :
In one side Will considers compute/merge best implementation should be as a new Command (so what is already done)
In the other side, Radim considers adding another command is not necessary as we could simple implement these methods using ReadWriteKeyCommand

The detailed discussion and arguments of both sides is on GitHub [2]

Before moving forward and making any choice by myself, I would like to hear your opinions. For the record, it doesn't bother me redoing everything if most people think like Radim because working on commands has helped me to learn and understand more about infinispan internals, so this hasn't been a waste of time for me.

Katia

[1] https://issues.jboss.org/browse/ISPN-5728
[2] https://github.com/infinispan/infinispan/pull/5046