GitHub user franz1981 opened a pull request:
https://github.com/apache/activemq-artemis/pull/1895
ARTEMIS-1702 ConcurrentLongHashMap and ConcurrentLongHashSet should avoid
volatile set cost on put/remove
Most of the visibility guarantees of size/capacity fields modifications are
already provided through optimistic locking, hence it could be used it instead
of volatile set(s) on put/remove, making those methods more efficient.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/franz1981/activemq-artemis
concurrent_long_hash_map_set_no_barriers
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/activemq-artemis/pull/1895.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1895
----
commit cab7ece2339c2696bedab28e6111cfac2f347b97
Author: Francesco Nigro <nigro.fra@...>
Date: 2018-02-26T09:05:02Z
ARTEMIS-1702 ConcurrentLongHashMap and ConcurrentLongHashSet should avoid
volatile set cost on put/remove
Most of the visibility guarantees of size/capacity fields modifications are
already provided through optimistic locking, hence it could be used it instead
of volatile set(s) on put/remove, making those methods more efficient.
----
---