...
Option Name | Default Value | Description |
execution.interactive-client | false | Enabling this means the Flink client will be used in an interactive scenario. It should reuse all the necessary resources to improve interactive performance. Notice: This option will only take effect when Flink is deployed in session-mode. |
CollectOptions
Option Name | Default Value | Description |
collect-strategy.type | fixed-delay | Config options for RetryStrategy in |
collect-strategy.fixed-delay.attempts | Integer.MAX_VALUE | Config options for |
collect-strategy.fixed-delay.delay | 100 ms | |
collect-strategy.exponential-delay.initial-backoff | 100 ms | Config options for |
collect-strategy.exponential-delay.max-backoff | 1 s | |
collect-strategy.exponential-delay.attempts | Integer.MAX_VALUE | |
collect-strategy.incremental-delay.initial-delay | 100 ms | Config options for |
collect-strategy.incremental-delay.increment | 100 ms | |
collect-strategy.incremental-delay.max-delay | 1 s | |
collect-strategy.incremental-delay.attempts | Integer.MAX_VALUE |
Proposed Change
Overview
- Reuse
ClusterDescriptor
when interacting with a dedicated session cluster - Reuse
ClientHighAvailabilityServices
for leader retrieval with the same session cluster - Reuse
RestClusterClient
when sending requests to the same session cluster - Reuse the HTTP connections between JDBC Driver to SQL Gateway and Flink Client to Flink Cluster with the same target address
- Use
ThreadLocal<ObjectMapper>
instead of a globalObjectMapper
instance - Use a configurable retry strategy in
CollectResultFetcher
to reduce unnecessary workload
...
Currently, ClientHighAvailabilityServices
will only return a LeaderRetrievalService
and the LeaderRetrievalService
that that can only be started once with a LeaderRetrievalListener
. This leads to that if multiple ClusterClient
instances need to listen to the high availability change, they would have to start their own ClientHighAvailabilityServices
.
...