[ https://issues.apache.org/jira/browse/FLINK-7880?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16260866#comment-16260866 ]
ASF GitHub Bot commented on FLINK-7880: --------------------------------------- Github user zentol commented on a diff in the pull request: https://github.com/apache/flink/pull/5038#discussion_r152298240 --- Diff: flink-queryable-state/flink-queryable-state-client-java/src/main/java/org/apache/flink/queryablestate/network/Client.java --- @@ -312,32 +345,43 @@ private void handInChannel(Channel channel) { /** * Close the connecting channel with a ClosedChannelException. */ - private void close() { - close(new ClosedChannelException()); + private CompletableFuture<?> close() { + return close(new ClosedChannelException()); } /** * Close the connecting channel with an Exception (can be {@code null}) * or forward to the established channel. */ - private void close(Throwable cause) { - synchronized (connectLock) { - if (!closed) { - if (failureCause == null) { - failureCause = cause; - } + private CompletableFuture<?> close(Throwable cause) { + CompletableFuture<?> future = new CompletableFuture<>(); + if (connectionShutdownFuture.compareAndSet(null, future)) { + synchronized (connectLock) { + if (!closed) { --- End diff -- this seems unnecessary, doesn't the check at L358 guarantee that the entire branch is only executed once? > flink-queryable-state-java fails with core-dump > ----------------------------------------------- > > Key: FLINK-7880 > URL: https://issues.apache.org/jira/browse/FLINK-7880 > Project: Flink > Issue Type: Bug > Components: Queryable State, Tests > Affects Versions: 1.4.0 > Reporter: Till Rohrmann > Assignee: Kostas Kloudas > Priority: Critical > Labels: test-stability > > The {{flink-queryable-state-java}} module fails on Travis with a core dump. > https://travis-ci.org/tillrohrmann/flink/jobs/289949829 -- This message was sent by Atlassian JIRA (v6.4.14#64029)