[ https://issues.apache.org/jira/browse/AIRAVATA-343?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13230859#comment-13230859 ]
Saminda Wijeratne commented on AIRAVATA-343: -------------------------------------------- If you've ever used a debugger before the required features should be pretty straightforward to think of. If we start looking at the debugger client perspective the most common features would be, * A way to connect with the workflow debugging server/service: given some url, in certain cases prehaps credentials etc. * Exchanging debugging configuration with the server/service listing workflows are currently being executed/running specifying what workflows the client is interested in debugging eg: workflow topic id (usually unique at the execution of a workflow) breakpoint nodes & their properties * Listening to workflow events eg: workflow execution started, terminated, suspended, resumed, error, breakpoint_not_found etc. * Issuing debug commands while workflow execution eg: add breakpoint edit breakpoint properties clear breakpoint get/set node data, state, stack etc. step restart run stop As far as I can remember the workflow model is not transformed in to some compiled object when it is executed. Which means unlike many compiled programming languages we should be able to treat the workflow being executed as being executed by an interpreter. i.e. while the workflow is being executed we could allow changes of the workflow model to have immediate effect from the current execution point onwards (with some proper validation onwards). Which would be a cool feature to have. Please buzz if anything's unclear. I'll add more details on where to jump-in in Airavata code to start investigating. > [GSoC] Workflow Debugging Framework for Airavata > ------------------------------------------------ > > Key: AIRAVATA-343 > URL: https://issues.apache.org/jira/browse/AIRAVATA-343 > Project: Airavata > Issue Type: New Feature > Reporter: Saminda Wijeratne > Priority: Minor > > The backend of Airavata should support workflow debugging. It should expose > some API that will enable users to connect & > 1. Receive workflow execution data, current state data > 2. Send commands to manipulate execution life cycle > (pause/resume/restart/stop etc.) > 3. Modify workflow data on the fly > The API should be intuitive, language independent & supports remote debugging. > The specifics for the task & the level of debugging is open for discussion. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira