Return-Path: X-Original-To: apmail-hadoop-mapreduce-dev-archive@minotaur.apache.org Delivered-To: apmail-hadoop-mapreduce-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 4E6F79EA7 for ; Mon, 25 Jun 2012 18:14:07 +0000 (UTC) Received: (qmail 10999 invoked by uid 500); 25 Jun 2012 18:14:06 -0000 Delivered-To: apmail-hadoop-mapreduce-dev-archive@hadoop.apache.org Received: (qmail 10790 invoked by uid 500); 25 Jun 2012 18:14:06 -0000 Mailing-List: contact mapreduce-dev-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: mapreduce-dev@hadoop.apache.org Delivered-To: mailing list mapreduce-dev@hadoop.apache.org Received: (qmail 10782 invoked by uid 99); 25 Jun 2012 18:14:06 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 25 Jun 2012 18:14:06 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [209.85.160.48] (HELO mail-pb0-f48.google.com) (209.85.160.48) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 25 Jun 2012 18:13:59 +0000 Received: by pbbrq8 with SMTP id rq8so8154120pbb.35 for ; Mon, 25 Jun 2012 11:13:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to:x-mailer :x-gm-message-state; bh=tpTSrVFCEvQKkz0L3iGBV8Nf2M3+Qr8ZFt0zZFx+6a4=; b=cwZAQ3ok/F/enVALwXnpRGuKG7xixWXqOm4PRJswroxww7M4Hs+v55MUcrvxRanDXR 48oPEznMxs76g1eypjgwtoxs+dGygwA9CoEnxm2V0+7+1XI0HRq2Iv1FE9MaV34Qw5SE 705zta/lBRNwrlZnPh2+0G9NvW0OzWJVwZr4nabxdE2lA4lXfBI3Mmq6eVPzLh9BdoMm xxuzDK1JH4WLgDCxsY86P6OcpPPo53Wb5C1+CQEmocfK6LnKPQlPv+Ap9g2KoeAv2ei+ Lv9p+esSEBaE/JyzkGFl5BkwDtg8LFkDlI5U1wDgOnQGwAUuinSDBqRVfltZ6eQQerxO /mIw== Received: by 10.68.138.169 with SMTP id qr9mr43372826pbb.27.1340648018101; Mon, 25 Jun 2012 11:13:38 -0700 (PDT) Received: from [10.10.11.179] (host1.hortonworks.com. [70.35.59.2]) by mx.google.com with ESMTPS id jv6sm9185353pbc.40.2012.06.25.11.13.35 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 25 Jun 2012 11:13:36 -0700 (PDT) Content-Type: text/plain; charset=iso-8859-1 Mime-Version: 1.0 (Apple Message framework v1278) Subject: Re: Cyclic dependency in JobControl job DAG From: Vinod Kumar Vavilapalli In-Reply-To: Date: Mon, 25 Jun 2012 11:13:36 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <24CF501E-A635-4956-9B9C-6475F3095AA1@hortonworks.com> References: To: mapreduce-dev@hadoop.apache.org X-Mailer: Apple Mail (2.1278) X-Gm-Message-State: ALoCoQlEPlzCHFcXgI289A6AHYQD2l8mMTC37MKqjUWj5BHRjvKkjLJKy0vcNhCcO/fLEwF/LXlx +1, can you please open a JIRA ticket (at = https://issues.apache.org/jira/browse/MAPREDUCE) and attach a patch? Thanks, +Vinod On Jun 25, 2012, at 6:53 AM, Robert Evans wrote: > I personally think it is useful. I would say contribute it. >=20 > (Moved common-dev to bcc, we try not to cross post on these lists) >=20 > --Bobby Evans >=20 > On 6/25/12 3:37 AM, "madhu phatak" wrote: >=20 > Hi, > In current implementation of JobControl, whenever there is a cyclic > dependency between the jobs it throws a Stack overflow exception . > For example, > ControlledJob job1 =3D new ControlledJob(new Configuration()); > job1.setJobName("job1"); > ControlledJob job2 =3D new ControlledJob(new Configuration()); > job2.setJobName("job2"); > job1.addDependingJob(job2); > job2.addDependingJob(job1); > JobControl jobControl =3D new JobControl("jobcontrol"); > jobControl.addJob(job1); > jobControl.addJob(job2); > jobControl.run(); >=20 > throws > java.lang.StackOverflowError > at java.util.ArrayList.get(ArrayList.java:322) > at > = org.apache.hadoop.mapreduce.lib.jobcontrol.ControlledJob.checkState(Contro= lledJob.java:295) >=20 > Whenever we write complex application, there is always possibility of > cyclic dependencies.I have written a method which checks for the = cyclic > dependency upfront and informs it to the user. I want to know from = you > guys, do you think is it a useful feature? If yes I can contribute it = as a > patch. >=20 > Regards, > Madhukara Phatak > -- > https://github.com/zinnia-phatak-dev/Nectar >=20