On top of that, use Java's StringBuilder instead of Scala's for the rest of situations.
…ly in distributed mode The hash configuration checks that it's only been called in distributed mode, so we need to make sure we don't call it in replicated/invalidation/local modes.
I fixed the configuration translation to the legacy classes to always set rehashRpcTimeout and I added some INFO log messages for users who configure rehashRpcTimeout/rehashWait. The state transfer code can keep using rehashRpcTimeout internally until we switch to the new configuration everywhere.
Writing an empty bucket deleted the file but it didn't close the channel first. The EOFExceptions were caused by the purge operations removing expired entries and updating the bucket on disk, while holding the bucket lock only in shared mode.
* Don't record an entry in the L1 manager if the originator is also a data owner * Don't always use NotifyingFutureImpl when this is not always needed - a regular JDK future is cheaper * Add new cleanup task in L1 manager * Introduce new configuration element to control frequency of cleanup of L1 manager internals * Update XSD to reflect new config attribute
…or doesn't work properly if a target node died The JGroups SuspectedException was treated like any other exception, and it wasn't mapped to the Infinispan SuspectException.
Add it for CacheViewControlCommands as well
…chronous I removed this limitation and replay support altogether, since it was no longer used.