Return-Path: X-Original-To: apmail-drill-issues-archive@minotaur.apache.org Delivered-To: apmail-drill-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 380AF17DE9 for ; Wed, 15 Apr 2015 20:29:59 +0000 (UTC) Received: (qmail 42725 invoked by uid 500); 15 Apr 2015 20:29:59 -0000 Delivered-To: apmail-drill-issues-archive@drill.apache.org Received: (qmail 42694 invoked by uid 500); 15 Apr 2015 20:29:59 -0000 Mailing-List: contact issues-help@drill.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@drill.apache.org Delivered-To: mailing list issues@drill.apache.org Received: (qmail 42682 invoked by uid 99); 15 Apr 2015 20:29:59 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 15 Apr 2015 20:29:59 +0000 Date: Wed, 15 Apr 2015 20:29:58 +0000 (UTC) From: "Chris Westin (JIRA)" To: issues@drill.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (DRILL-2370) Missing cancellation acknowledgements leave orphaned cancelled queries around MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/DRILL-2370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14496879#comment-14496879 ] Chris Westin commented on DRILL-2370: ------------------------------------- [~jnadeau], it seems like your changes with the new NodeTracker handle dead nodes and take care of this. Do you agree? > Missing cancellation acknowledgements leave orphaned cancelled queries around > ----------------------------------------------------------------------------- > > Key: DRILL-2370 > URL: https://issues.apache.org/jira/browse/DRILL-2370 > Project: Apache Drill > Issue Type: Bug > Components: Execution - Flow > Affects Versions: 0.7.0 > Reporter: Chris Westin > Assignee: Jacques Nadeau > Fix For: 0.9.0 > > > When a query is cancelled (say by Foreman.cancel()), Foreman moves to the CANCELLED state, which indicates that cancellation is in progress. Cancellation requests are sent to remote drill fragments. These should be replied to via QueryManager.statusUpdate() (inherited from FragmentStatusListener), which in turn updates Foreman. However, if any of the cancellation requests are not acknowledged (due to drillbit failure, RPC timeout, etc), then the being-cancelled query will stay that way indefinitely. We need to have a way to find such queries and force them to be cleaned up. This may require substituting stub listeners for some of the objects involved in case cancellation acknowledgements still arrive even later still -- these need to be safely invokable by the RPC layer even though the query they referred to is gone. -- This message was sent by Atlassian JIRA (v6.3.4#6332)