Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id E5495200B6D for ; Tue, 23 Aug 2016 18:58:39 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id E3C0C160AAD; Tue, 23 Aug 2016 16:58:39 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 34D18160A81 for ; Tue, 23 Aug 2016 18:58:39 +0200 (CEST) Received: (qmail 23968 invoked by uid 500); 23 Aug 2016 16:58:37 -0000 Mailing-List: contact issues-help@flink.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@flink.apache.org Delivered-To: mailing list issues@flink.apache.org Received: (qmail 23959 invoked by uid 99); 23 Aug 2016 16:58:37 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 23 Aug 2016 16:58:37 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 881EEC03CB for ; Tue, 23 Aug 2016 16:58:37 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -5.446 X-Spam-Level: X-Spam-Status: No, score=-5.446 tagged_above=-999 required=6.31 tests=[KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id Q-gvt36wtZbK for ; Tue, 23 Aug 2016 16:58:35 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with SMTP id DDC6C5F5A2 for ; Tue, 23 Aug 2016 16:58:34 +0000 (UTC) Received: (qmail 23940 invoked by uid 99); 23 Aug 2016 16:58:34 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 23 Aug 2016 16:58:34 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id F0F62E020A; Tue, 23 Aug 2016 16:58:33 +0000 (UTC) From: mxm To: issues@flink.incubator.apache.org Reply-To: issues@flink.incubator.apache.org References: In-Reply-To: Subject: [GitHub] flink pull request #2313: [FLINK-4273] Modify JobClient to attach to running... Content-Type: text/plain Message-Id: <20160823165833.F0F62E020A@git1-us-west.apache.org> Date: Tue, 23 Aug 2016 16:58:33 +0000 (UTC) archived-at: Tue, 23 Aug 2016 16:58:40 -0000 Github user mxm commented on a diff in the pull request: https://github.com/apache/flink/pull/2313#discussion_r75907814 --- Diff: flink-runtime/src/main/java/org/apache/flink/runtime/client/JobClient.java --- @@ -243,46 +247,46 @@ public static JobExecutionResult awaitJobResult(JobListeningContext listeningCon final JobID jobID = listeningContext.getJobID(); final ActorRef jobClientActor = listeningContext.getJobClientActor(); final Future jobSubmissionFuture = listeningContext.getJobResultFuture(); + final FiniteDuration askTimeout = listeningContext.getTimeout(); // retrieves class loader if necessary final ClassLoader classLoader = listeningContext.getClassLoader(); + // wait for the future which holds the result to be ready + // ping the JobClientActor from time to time to check if it is still running while (!jobSubmissionFuture.isCompleted()) { try { - Thread.sleep(250); - } catch (InterruptedException e) { - throw new JobExecutionException(jobID, "Interrupted while waiting for execution result.", e); - } - - try { - Await.result( - Patterns.ask( - jobClientActor, - JobClientMessages.getPing(), - Timeout.durationToTimeout(AkkaUtils.getDefaultTimeout())), - AkkaUtils.getDefaultTimeout()); + Await.ready(jobSubmissionFuture, askTimeout); } catch (Exception e) { --- End diff -- Ah, I thought you were commenting on the inner catch block. Yes, it makes sense to catch only `TimeoutException` and `InterruptedException` here for `Await.ready`. `Await.result` actually throws Exception. --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastructure@apache.org or file a JIRA ticket with INFRA. ---