[
https://issues.apache.org/jira/browse/FLINK-13964?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16923214#comment-16923214
]
Till Rohrmann edited comment on FLINK-13964 at 9/5/19 8:59 AM:
---------------------------------------------------------------
Looking at this problem I realised that it still might be a good idea for the
{{HighAvailabilityServices}} to be able to create the leader retriever for the
cluster rest endpoint. If this is the case, then one does not have to
instantiate a {{ClientHighAvailabilityServices}} and
{{HighAvailabilityServices}} instance in the {{MiniCluster}} or other classes
which need access to cluster HA services and the cluster rest endpoint
retriever. Given that the HA services also need to create the cluster rest
endpoint leader election service, it might actually make sense to let them also
create the retriever for it.
The problem with creating separate {{HighAvailabilityServices}} and
{{ClientHighAvailabilityServices}} is that they both might start resources
which could actually be shared (e.g. a {{CuratorFramework}} client).
I would propose to do the following: Let {{HighAvailabilityServices}} extend
{{ClientHighAvailabilityServices}} with a default implementation which calls
{{HighAvailabilityServices#getWebMonitorRetrieverService}} in order to ensure
backwards compatibility with existing {{HighAvailabilityServices}}
implementations.
WDYT [~Tison]?
was (Author: till.rohrmann):
Looking at this problem I realised that it still might be a good idea for the
{{HighAvailabilityServices}} to be able to create the leader retriever for the
cluster rest endpoint. If this is the case, then one does not have to
instantiate a {{ClientHighAvailabilityServices}} and
{{HighAvailabilityServices}} instance in the {{MiniCluster}} or other classes
which need access cluster HA services and the cluster rest endpoint retriever.
Given that the HA services also need to create the cluster rest endpoint leader
election service, it might actually make sense to let them also create the
retriever for it.
I would propose to do the following: Let {{HighAvailabilityServices}} extend
{{ClientHighAvailabilityServices}} with a default implementation which calls
{{HighAvailabilityServices#getWebMonitorRetrieverService}} in order to ensure
backwards compatibility with existing {{HighAvailabilityServices}}
implementations.
WDYT [~Tison]?
> Remove usage of deprecated methods from MiniCluster
> ---------------------------------------------------
>
> Key: FLINK-13964
> URL: https://issues.apache.org/jira/browse/FLINK-13964
> Project: Flink
> Issue Type: Improvement
> Components: Runtime / Coordination
> Affects Versions: 1.10.0
> Reporter: Till Rohrmann
> Assignee: Till Rohrmann
> Priority: Major
> Fix For: 1.10.0
>
>
> With FLINK-13750 we deprecated
> {{HighAvailabilityServices#getWebMonitorRetrieverService}}. This method is
> still actively used by the {{MiniCluster}}. We should remove the usage in
> order to also support custom {{HighAvailabilityService}} implementations
> which no longer implement
> {{HighAvailabilityServices#getWebMonitorRetrieverService}}.
--
This message was sent by Atlassian Jira
(v8.3.2#803003)