GitHub user pnowojski opened a pull request:
https://github.com/apache/flink/pull/4840
[FLINK-7368][metrics] Make MetricStore ThreadSafe class
Remove external synchronisation on MetricStore
## What is the purpose of the change
This is a refactor that makes `MetricStore` thread safe. It achieves it by
pulling in all modifying methods and by returning immutable copies in getters.
## Verifying this change
This change is already covered by existing tests, such as `MetricStoreTest`
or `MetricFetcherTest`
## Does this pull request potentially affect one of the following parts:
- Dependencies (does it add or upgrade a dependency): (yes / **no**)
- The public API, i.e., is any changed class annotated with
`@Public(Evolving)`: (yes / **no**)
- The serializers: (yes / **no** / don't know)
- The runtime per-record code paths (performance sensitive): (yes /
**no** / don't know)
- Anything that affects deployment or recovery: JobManager (and its
components), Checkpointing, Yarn/Mesos, ZooKeeper: (yes / **no** / don't know)
## Documentation
- Does this pull request introduce a new feature? (yes / **no**)
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/pnowojski/flink flink7368
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/4840.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 #4840
----
commit e49438e76c1ffb92b24837d8b958ae491bb0f9ca
Author: Piotr Nowojski <[email protected]>
Date: 2017-10-16T14:53:14Z
[FLINK-7368][metrics] Make MetricStore ThreadSafe class
Remove external synchronization on MetricStore
----
---