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 1DD68200D3E for ; Thu, 16 Nov 2017 22:51:31 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 1C306160BEA; Thu, 16 Nov 2017 21:51:31 +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 14B2B1609EF for ; Thu, 16 Nov 2017 22:51:29 +0100 (CET) Received: (qmail 65151 invoked by uid 500); 16 Nov 2017 21:51:29 -0000 Mailing-List: contact dev-help@airavata.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@airavata.apache.org Delivered-To: mailing list dev@airavata.apache.org Received: (qmail 65141 invoked by uid 99); 16 Nov 2017 21:51:28 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 16 Nov 2017 21:51:28 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id 078D11A205D for ; Thu, 16 Nov 2017 21:51:28 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -0.8 X-Spam-Level: X-Spam-Status: No, score=-0.8 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=2, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-2.8] autolearn=disabled Authentication-Results: spamd2-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=umail-iu-edu.20150623.gappssmtp.com Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id AxP7Gw-_VTjX for ; Thu, 16 Nov 2017 21:51:25 +0000 (UTC) Received: from mail-io0-f174.google.com (mail-io0-f174.google.com [209.85.223.174]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id 2A1405FBF6 for ; Thu, 16 Nov 2017 21:51:25 +0000 (UTC) Received: by mail-io0-f174.google.com with SMTP id 189so6752375iow.10 for ; Thu, 16 Nov 2017 13:51:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=umail-iu-edu.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=Ac2apnuAwPSCt27/z6hahsyFUJFG7YSlwFrW6hACF4Y=; b=FCKXudq69KNdTqe2o8GIUXCuy3K+48iF/GejFfBrwbQzYElzAiYksVRffpBDAQQ+kh WY5clbWUY8KtEn6AtOUyzqG4IA8SIKcDwnMYD4WrXQA9wnGmNwX7QxicGEsjpkhqrWSk X9UJNvR5BhBpqy4L0Y0t+k+Iebpb/ZYAbRxNwSc3CBtg8VGoDAForSlwJaumd9t0y3YZ Zlmnv9aLj+dpK1WHljGUGU/OBXeQw4rEOTzFRhRGqh1X0JZvZG9W650+0R8kdmOV4wlU a636AWD5+YjYI0dChyFAPEfDlYk8iiTMMrNxW8xDDG0j9eT0HTxGHEZQrdeV08OvnbqL xMKg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=Ac2apnuAwPSCt27/z6hahsyFUJFG7YSlwFrW6hACF4Y=; b=MYTIRtksqEnyO71IFLwLn/dIp2o/u3ZjxUKhLCf0DrBdjyODPNMSwXvfjCY4MxTYxI HEcQgKEJi9hwYiXuDRSvonyLSk02suil+dM+rCRlora5BzVgLMzot2w8C6mxP7ZAiqZU gybbLEjvfuLM+l4DXweTDHOxzIAk9dinr0zCrEkPIpn/y6wqbJDLQSTmRFfMpsONIrKq 3CXYpKyjSy9dzFFag9TYUqDdgJem+rZe3PNiRObJ4tAlsHIt2rN5XX6pJywzWRzqFk65 Uu4E/AnBFoDqMbkkmoQuivBLPyFr1Q3BMSCAkHALMPqR0enzHb/M5eztkWPHR0Yjhg3n HQIw== X-Gm-Message-State: AJaThX6edKYYWTR0fs4QkllEtCFyIZqqjqhq3JcsyWm5QSOIyzsZ/xOO YJPE4Ad0EbiChYSvs8Dx7IWzhApHBNlJebGo89Ss8g== X-Google-Smtp-Source: AGs4zMYNjfMpmUFsnbXc4E01B2wngBSYdEWDT2zBoPgiIHAZqbfX9vL+WV7iedJY2jHa8MrTnaHuSwhK65XglLYu1lQ= X-Received: by 10.107.18.38 with SMTP id a38mr438769ioj.58.1510869084174; Thu, 16 Nov 2017 13:51:24 -0800 (PST) MIME-Version: 1.0 Received: by 10.79.40.129 with HTTP; Thu, 16 Nov 2017 13:51:23 -0800 (PST) In-Reply-To: References: From: Ajinkya Dhamnaskar Date: Thu, 16 Nov 2017 13:51:23 -0800 Message-ID: Subject: Re: Using job specific Participants in Helix To: dimuthu.upeksha2@gmail.com Cc: Airavata Dev Content-Type: multipart/alternative; boundary="001a113fe98c1093a3055e209f52" archived-at: Thu, 16 Nov 2017 21:51:31 -0000 --001a113fe98c1093a3055e209f52 Content-Type: text/plain; charset="UTF-8" Hey Dlmuthu, Not an expert in Helix, but from exceptions it seems, system is entering in a state not expected by reflection. I feel https://github.com/apache/helix/blob/master/helix-core/src/main/java/org/apache/helix/messaging/handling/HelixStateTransitionHandler.java#L295 is triggering this exception. As mentioned in the later part of the stack trace and from Helix Apache Docs *("Helix is built on the following assumption: if your distributed resource is modeled by a finite state machine, then Helix can tell participants when they should transition between states. In the Java API, this means implementing transition callbacks. In the Helix agent API, this means providing commands than can run for each transition"),* did you implement *transition callback* for these tasks? On Thu, Nov 16, 2017 at 10:01 AM, DImuthu Upeksha < dimuthu.upeksha2@gmail.com> wrote: > Hi Devs, > > I'm working on the technology evaluation to re architecture Apache > Airavata task execution framework and Helix seems like a good candidate for > that as it has an in built distributed generic workflow execution > capability. After going through several tutorials, I tried to implement a > simple workflow on Helix to demonstrate following transition > > Data Collecting Job -> Command Executing Job -> Data Uploading Job > > I managed to implement this using a Participant node that includes all the > tasks required for above workflow. However my goal is to implement > specialized Participants for each Job type. For example, Participant 1 > knows only about the tasks to perform Data Collecting Job and Participant > knows only about the task to perform Command Executing Job. When I tried to > implement such Participants, I got following error from Participant 1. I > can share the code samples that I have tried but before that I need to know > whether my approach is compatible with Helix's design? Does Helix require > all the Participants to be homogeneous? > > Executing data collecting > 675892 [pool-2-thread-8] ERROR org.apache.helix.messaging.handling.HelixStateTransitionHandler > - Exception while executing a state transition task Airavata_Workflow_ > commandExecuteJob_0 > java.lang.reflect.InvocationTargetException > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at sun.reflect.NativeMethodAccessorImpl.invoke( > NativeMethodAccessorImpl.java:62) > at sun.reflect.DelegatingMethodAccessorImpl.invoke( > DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at org.apache.helix.messaging.handling.HelixStateTransitionHandler.invoke( > HelixStateTransitionHandler.java:344) > at org.apache.helix.messaging.handling.HelixStateTransitionHandler. > handleMessage(HelixStateTransitionHandler.java:290) > at org.apache.helix.messaging.handling.HelixTask.call(HelixTask.java:84) > at org.apache.helix.messaging.handling.HelixTask.call(HelixTask.java:41) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at java.util.concurrent.ThreadPoolExecutor.runWorker( > ThreadPoolExecutor.java:1149) > at java.util.concurrent.ThreadPoolExecutor$Worker.run( > ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: java.lang.IllegalStateException: No callback implemented for > task COMMAND > at org.apache.helix.task.TaskStateModel.startTask(TaskStateModel.java:302) > at org.apache.helix.task.TaskStateModel.onBecomeRunningFromInit( > TaskStateModel.java:69) > ... 12 more > 675900 [pool-2-thread-8] ERROR org.apache.helix.participant.statemachine.StateModel > - Default rollback method invoked on error. Error Code: ERROR > 675908 [pool-2-thread-8] ERROR org.apache.helix.messaging.handling.HelixTask > - Message execution failed. msgId: 8d9a08c9-0ae7-419a-8940-6b8e6e7c1ecb, > errorMsg: java.lang.reflect.InvocationTargetException > 675922 [pool-2-thread-8] ERROR org.apache.helix.messaging.handling.HelixStateTransitionHandler > - Skip internal error. errCode: ERROR, errMsg: null > > Thanks > Dimuthu > -- Thanks and regards, Ajinkya Dhamnaskar Student ID : 0003469679 Masters (CS) +1 (812) 369- 5416 --001a113fe98c1093a3055e209f52 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hey Dlmuthu,

Not an expert in Helix, bu= t from exceptions it seems, system is entering in a state not expected by r= eflection. I feel=C2=A0https://github.com/apache/helix/blob/master/hel= ix-core/src/main/java/org/apache/helix/messaging/handling/HelixStateTransit= ionHandler.java#L295 is triggering this exception.=C2=A0
As m= entioned in the later part of the stack trace and from Helix Apache Docs (&q= uot;Helix is built on the followi= ng assumption: if your distributed resource is modeled by a finite state ma= chine, then Helix can tell participants when they should transition between= states. In the Java API, this means implementing transition callbacks. In = the Helix agent API, this means providing commands than can run for each tr= ansition"),=C2=A0did you implement=C2=A0transition callback=C2=A0for these tasks?

On= Thu, Nov 16, 2017 at 10:01 AM, DImuthu Upeksha <dimuthu.upeksha2= @gmail.com> wrote:
Hi Devs,

I'm working on the technology eval= uation to re architecture Apache Airavata task execution framework and Heli= x seems like a good candidate for that as it has an in built distributed ge= neric workflow execution capability. After going through several tutorials,= I tried to implement a simple workflow on Helix to demonstrate following t= ransition

Data Collecting Job -> Command Execut= ing Job -> Data Uploading Job

I managed to impl= ement this using a Participant node that includes all the tasks required fo= r above workflow. However my goal is to implement specialized Participants = for each Job type. For example, Participant 1 knows only about the tasks to= perform Data Collecting Job and Participant knows only about the task to p= erform Command Executing Job. When I tried to implement such Participants, = I got following error from Participant 1. I can share the code samples that= I have tried but before that I need to know whether my approach is compati= ble with Helix's design? Does Helix require all the Participants to be= =C2=A0homogeneous? =C2=A0

Executing data coll= ecting
675892 [pool-2-thread-8] ERROR org.apache.helix.messaging.= handling.HelixStateTransitionHandler=C2=A0 - Exception while exec= uting a state transition task Airavata_Workflow_commandExecuteJob_0
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccess= orImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.= invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(= Method.java:498)
at = org.apache.helix.messaging.handling.HelixStateTransitionHandler.<= wbr>invoke(HelixStateTransitionHandler.java:344)
at org.apache.helix.messaging.h= andling.HelixStateTransitionHandler.handleMessage(HelixState= TransitionHandler.java:290)
at org.apache.helix.messaging.handling.HelixTask.call(HelixTask.java:84)
at org.apache.helix.messaging.handling.HelixTask.call(HelixTask.= java:41)
at java.uti= l.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadP= oolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoo= lExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java= :748)
Caused by: java.lang.IllegalStateException: No callbac= k implemented for task COMMAND
at org.apache.helix.task.TaskStateModel.startTask(Task= StateModel.java:302)
at org.apache.helix.task.TaskStateModel.onBecomeRunningFromInit(= TaskStateModel.java:69)
... 12 more
675900 [pool-2-thread-8] ERROR org.apache.he= lix.participant.statemachine.StateModel=C2=A0 - Default rollback metho= d invoked on error. Error Code: ERROR
675908 [pool-2-thread-8] ER= ROR org.apache.helix.messaging.handling.HelixTask=C2=A0 - Message exec= ution failed. msgId: 8d9a08c9-0ae7-419a-8940-6b8e6e7c1ecb, errorMsg: j= ava.lang.reflect.InvocationTargetException
675922 [pool-2-th= read-8] ERROR org.apache.helix.messaging.handling.HelixStateTrans= itionHandler=C2=A0 - Skip internal error. errCode: ERROR, errMsg: null

Thanks
Dimuthu



--
Thanks and regards,

Ajinkya Dhamnaskar
Student ID : 0003469679
Masters (CS)
+1 (= 812) 369- 5416
--001a113fe98c1093a3055e209f52--