[ https://issues.apache.org/jira/browse/FLINK-3857?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15321994#comment-15321994 ]
ASF GitHub Bot commented on FLINK-3857: --------------------------------------- Github user tzulitai commented on a diff in the pull request: https://github.com/apache/flink/pull/1962#discussion_r66388796 --- Diff: flink-streaming-connectors/flink-connector-elasticsearch2/src/main/java/org/apache/flink/streaming/connectors/elasticsearch2/ElasticsearchSink.java --- @@ -153,9 +165,90 @@ public ElasticsearchSink(Map<String, String> userConfig, List<InetSocketAddress> */ @Override public void open(Configuration configuration) { + connect(); --- End diff -- I think we should try to avoid side-effecting class field members within utility member functions. It reduces the readability of the code. Return the created TransportClient instead, and have a separate utility function to check if connection is lost? > 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)