GitHub user tillrohrmann opened a pull request:
https://github.com/apache/flink/pull/5339
[FLINK-8493] [flip6] Integrate queryable state with Flip-6
## What is the purpose of the change
Adapt KvStateRegistry to accept multiple KvStateRegistryListeners. Introduce
the KvStateLocationOracle to retrieve the KvStateLocation. Adapt the
KvStateClientProxy
to accept multiple KvStateLocationOracles to retrieve the KvStateLocations
for
different jobs. Registered the KvStateRegistryListener and
KvStateLocationOracle
in TaskExecutor upon establishing a connection to the JobMaster.
## Brief change log
- Introduce `KvStateLocationOracle` which you can ask for the
`KvStateLocation`
- Adapt `KvStateRegistry` to accept multiple `KvStateRegistryListener`
- Adapt `KvStateClientProxy` to use `KvStateLocationOracle` instead of
`ActorGateway`
- Register `JobMaster` as `KvStateLocationOracle` and
`KvStateRegistryListener` when `TaskExecutor` establishes the connection to the
`JobMaster`
## Verifying this change
This change added tests and can be verified as follows:
- Added `KvStateClientProxyImplTest` and `KvStateRegistryTest`
## Does this pull request potentially affect one of the following parts:
- Dependencies (does it add or upgrade a dependency): (no)
- The public API, i.e., is any changed class annotated with
`@Public(Evolving)`: (no)
- The serializers: (no)
- The runtime per-record code paths (performance sensitive): (no)
- Anything that affects deployment or recovery: JobManager (and its
components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
- The S3 file system connector: (no)
## Documentation
- Does this pull request introduce a new feature? (no)
- If yes, how is the feature documented? (not applicable)
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/tillrohrmann/flink flip6QS
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/5339.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 #5339
----
commit 362145e44b79953136757276669e238e9c81d17f
Author: Till Rohrmann <trohrmann@...>
Date: 2018-01-22T17:11:04Z
[FLINK-8493] [flip6] Integrate queryable state with Flip-6
Adapt KvStateRegistry to accept multiple KvStateRegistryListeners. Introduce
the KvStateLocationOracle to retrieve the KvStateLocation. Adapt the
KvStateClientProxy
to accept multiple KvStateLocationOracles to retrieve the KvStateLocations
for
different jobs. Registered the KvStateRegistryListener and
KvStateLocationOracle
in TaskExecutor upon establishing a connection to the JobMaster.
----
---