[ 
https://issues.apache.org/jira/browse/FLINK-3857?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15436942#comment-15436942
 ] 

ASF GitHub Bot commented on FLINK-3857:
---------------------------------------

Github user HungUnicorn commented on the issue:

    https://github.com/apache/flink/pull/1962
  
    Using the sniffing feature of transport client can achieve this.
    The client will connect to all existing nodes and the connected list is 
updated every 5 seconds. It can fit our case because we will only have to 
specify one ip, and we will obtain a list of ips which updated periodically. 
It's done by
    `Settings settings = 
Settings.settingsBuilder().put(userConfig).put("client.transport.sniff", 
true).build();`
    
    Explanation:
    > The Transport client comes with a cluster sniffing feature which allows 
it to dynamically add new hosts and remove old ones. When sniffing is enabled 
the the transport client will connect to the nodes in its internal node list, 
which is built via calls to addTransportAddress. After this, the client will 
call the internal cluster state API on those nodes to discover available data 
nodes. The internal node list of the client will be replaced with those data 
nodes only. This list is refreshed every five seconds by default. 
    
    Source:
    
https://www.elastic.co/guide/en/elasticsearch/client/java-api/2.3//transport-client.html


> Add reconnect attempt to Elasticsearch host
> -------------------------------------------
>
>                 Key: FLINK-3857
>                 URL: https://issues.apache.org/jira/browse/FLINK-3857
>             Project: Flink
>          Issue Type: Improvement
>          Components: Streaming Connectors
>    Affects Versions: 1.1.0, 1.0.2
>            Reporter: Fabian Hueske
>            Assignee: Subhobrata Dey
>
> Currently, the connection to the Elasticsearch host is opened in 
> {{ElasticsearchSink.open()}}. In case the connection is lost (maybe due to a 
> changed DNS entry), the sink fails.
> I propose to catch the Exception for lost connections in the {{invoke()}} 
> method and try to re-open the connection for a configurable number of times 
> with a certain delay.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to