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 183E417D20 for ; Sun, 10 May 2015 18:35:00 +0000 (UTC) Received: (qmail 28217 invoked by uid 500); 10 May 2015 18:35:00 -0000 Delivered-To: apmail-drill-issues-archive@drill.apache.org Received: (qmail 28189 invoked by uid 500); 10 May 2015 18:35:00 -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 28153 invoked by uid 99); 10 May 2015 18:35:00 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 10 May 2015 18:34:59 +0000 Date: Sun, 10 May 2015 18:34:59 +0000 (UTC) From: "Sudheesh Katkam (JIRA)" To: issues@drill.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (DRILL-2977) In WorkManager, startFragmentPendingRemote() and addFragmentRunner() need to be permuted 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-2977?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sudheesh Katkam updated DRILL-2977: ----------------------------------- Attachment: DRILL-2977.3.patch.txt > In WorkManager, startFragmentPendingRemote() and addFragmentRunner() need to be permuted > ---------------------------------------------------------------------------------------- > > Key: DRILL-2977 > URL: https://issues.apache.org/jira/browse/DRILL-2977 > Project: Apache Drill > Issue Type: Bug > Components: Execution - Flow > Reporter: Deneche A. Hakim > Assignee: Venki Korukanti > Fix For: 1.0.0 > > Attachments: DRILL-2977.2.patch.txt, DRILL-2977.3.patch.txt > > > In WorkManager 2 methods can be used to start a fragment executor: > - startFragmentPendingRemote(FragmentManager) will start running a fragment by calling executor.execute(fragment) > - addFragmentRunner(FragmentExecutor) will add the fragment to runningFragments and start a fragment after wrapping it inside a SelfCleanableRunner to make sure it's manager is removed from the WorkEventBus once finished. > Looking at how both methods are called it seems that we are actually calling startFragmentPendingRemote() for fragments that were added to the WorkEventBus and we call addFragmentRunner() for fragment that were not added to the workBus!!! For example in Foreman.setupRootFragment() we have the following: > {code} > if (buffers.isDone()) { > // if we don't have to wait for any incoming data, start the fragment runner. > bee.addFragmentRunner(fragmentManager.getRunnable()); > } else { > // if we do, record the fragment manager in the workBus. > drillbitContext.getWorkBus().addFragmentManager(fragmentManager); > } > {code} > The names of the methods are correct, but we need to switch their implementations -- This message was sent by Atlassian JIRA (v6.3.4#6332)