Re: [galaxy-dev] Workflow param error leads to template error [patch]
Hi Dannon, Here is the full trace from the log: === 138.253.25.15 - - [29/Aug/2014:19:16:01 +0100] POST /galaxy/workflow/run?id=f597429621d6eb2b HTTP/1.1 500 - http://138.253.25.15/galaxy/workflow/run?id=f597429621d6eb2b; Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:31.0) Gecko/20100101 Firefox/31.0 Error - type 'exceptions.AttributeError': 'WorkflowStep' object has no attribute 'module' URL: http://138.253.25.15/galaxy/workflow/run?id=f597429621d6eb2b File '/usr/lib/galaxy-server/lib/galaxy/web/framework/middleware/error.py', line 149 in __call__ app_iter = self.application(environ, sr_checker) File '/usr/lib/galaxy-server/eggs/Paste-1.7.5.1-py2.7.egg/paste/recursive.py', line 84 in __call__ return self.application(environ, start_response) File '/usr/lib/galaxy-server/lib/galaxy/web/framework/middleware/remoteuser.py', line 94 in __call__ return self.app( environ, start_response ) File '/usr/lib/galaxy-server/eggs/Paste-1.7.5.1-py2.7.egg/paste/httpexceptions.py', line 633 in __call__ return self.application(environ, start_response) File '/usr/lib/galaxy-server/lib/galaxy/web/framework/base.py', line 132 in __call__ return self.handle_request( environ, start_response ) File '/usr/lib/galaxy-server/lib/galaxy/web/framework/base.py', line 190 in handle_request body = method( trans, **kwargs ) File '/usr/lib/galaxy-server/lib/galaxy/webapps/galaxy/controllers/workflow.py', line 1410 in run enable_unique_defaults=trans.app.config.enable_unique_workflow_defaults) File '/usr/lib/galaxy-server/lib/galaxy/web/framework/__init__.py', line 1194 in fill_template return self.fill_template_mako( filename, **kwargs ) File '/usr/lib/galaxy-server/lib/galaxy/web/framework/__init__.py', line 1209 in fill_template_mako return template.render( **data ) File '/usr/lib/galaxy-server/eggs/Mako-0.4.1-py2.7.egg/mako/template.py', line 296 in render return runtime._render(self, self.callable_, args, data) File '/usr/lib/galaxy-server/eggs/Mako-0.4.1-py2.7.egg/mako/runtime.py', line 660 in _render **_kwargs_for_callable(callable_, data)) File '/usr/lib/galaxy-server/eggs/Mako-0.4.1-py2.7.egg/mako/runtime.py', line 692 in _render_context _exec_template(inherit, lclcontext, args=args, kwargs=kwargs) File '/usr/lib/galaxy-server/eggs/Mako-0.4.1-py2.7.egg/mako/runtime.py', line 718 in _exec_template callable_(context, *args, **kwargs) File '/usr/lib/galaxy-server/database/compiled_templates/base.mako.py', line 66 in render_body __M_writer(unicode(next.body())) File '/usr/lib/galaxy-server/database/compiled_templates/workflow/run.mako.py', line 257 in render_body for ic in oc.input_step.module.get_data_inputs(): AttributeError: 'WorkflowStep' object has no attribute 'module' === Cheers, TIM On Thu, 2014-09-18 at 22:12 +0100, Dannon Baker wrote: Hi Tim, Thanks for this. If you still have it handy, what was the exact attribute error? -Dannon On Thu, Sep 18, 2014 at 10:28 AM, Tim Booth tbo...@ceh.ac.uk wrote: Dear Devs, I recently ran into a problem where attempting to run a workflow resulted in an uninformative error and a traceback in the logs, that I put into Google. This led me to the message below from 2012. As far as I can see it got no reply at the time and I have hit the same issue. I modified database/compiled_templates/workflow/run.mako.py and this resulted in a much more useful error report appearing in the browser. Obviously this is a generated file, so attached is a patch for templates/webapps/galaxy/workflow/run.mako that I propose you add to Galaxy. As you'll see it just adds a single try block and then ignores the exception, which I would say in this case is not actually a bad thing to do even if it is not the ideal fix. Should be fairly explanatory from the patch. Cheers, TIM Way way back in Jun 2012, Paul-Michael.Agapow at hpa.org.uk wrote: Looking for pointers on what might be causing this problem: A user had a moderately complicated workflow that when run under certain parameter values results in a traceback that ends: Module workflow_run_mako:232 in render_body for ic in oc.input_step.module.get_data_inputs(): AttributeError: 'WorkflowStep' object has no attribute 'module' After some puzzling, I realized one of the parameters was outside the allowed range (a max on an integer param) and that Galaxy was trying to render run.mako flagging up the error but erroring out. Why Galaxy tries to call this non-existent member is unclear to me. Any insight or places I should start exploring?
Re: [galaxy-dev] Workflow param error leads to template error [patch]
Dear Devs, I recently ran into a problem where attempting to run a workflow resulted in an uninformative error and a traceback in the logs, that I put into Google. This led me to the message below from 2012. As far as I can see it got no reply at the time and I have hit the same issue. I modified database/compiled_templates/workflow/run.mako.py and this resulted in a much more useful error report appearing in the browser. Obviously this is a generated file, so attached is a patch for templates/webapps/galaxy/workflow/run.mako that I propose you add to Galaxy. As you'll see it just adds a single try block and then ignores the exception, which I would say in this case is not actually a bad thing to do even if it is not the ideal fix. Should be fairly explanatory from the patch. Cheers, TIM Way way back in Jun 2012, Paul-Michael.Agapow at hpa.org.uk wrote: Looking for pointers on what might be causing this problem: A user had a moderately complicated workflow that when run under certain parameter values results in a traceback that ends: Module workflow_run_mako:232 in render_body for ic in oc.input_step.module.get_data_inputs(): AttributeError: 'WorkflowStep' object has no attribute 'module' After some puzzling, I realized one of the parameters was outside the allowed range (a max on an integer param) and that Galaxy was trying to render run.mako flagging up the error but erroring out. Why Galaxy tries to call this non-existent member is unclear to me. Any insight or places I should start exploring? Galaxy version: various (started with an 6-month old one, upgraded to latest production to see if it would fix error, it didn't) Hosting OS: CentOS 6 -- Paul Agapow (paul-michael.agapow at hpa.org.uk) Bioinformatics, Health Protection Agency (UK) -- Tim Booth tbo...@ceh.ac.uk NERC Environmental Bioinformatics Centre Centre for Ecology and Hydrology Maclean Bldg, Benson Lane Crowmarsh Gifford Wallingford, England OX10 8BB http://nebc.nerc.ac.uk +44 1491 69 2705 # This patch addresses http://lists.bx.psu.edu/pipermail/galaxy-dev/2012-June/010303.html --- a/templates/webapps/galaxy/workflow/run.mako +++ b/templates/webapps/galaxy/workflow/run.mako @@ -582,9 +582,12 @@ # Filter possible inputs to data types that are valid for subsequent steps type_filter = [] for oc in step.output_connections: +try: for ic in oc.input_step.module.get_data_inputs(): if 'extensions' in ic and ic['name'] == oc.input_name: type_filter += ic['extensions'] +except AttributeError: + pass if not type_filter: type_filter = ['data'] % ___ Please keep all replies on the list by using reply all in your mail client. To manage your subscriptions to this and other Galaxy lists, please use the interface at: http://lists.bx.psu.edu/ To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/search/mailinglists/
Re: [galaxy-dev] Workflow param error leads to template error [patch]
Hi Tim, Thanks for this. If you still have it handy, what was the exact attribute error? -Dannon On Thu, Sep 18, 2014 at 10:28 AM, Tim Booth tbo...@ceh.ac.uk wrote: Dear Devs, I recently ran into a problem where attempting to run a workflow resulted in an uninformative error and a traceback in the logs, that I put into Google. This led me to the message below from 2012. As far as I can see it got no reply at the time and I have hit the same issue. I modified database/compiled_templates/workflow/run.mako.py and this resulted in a much more useful error report appearing in the browser. Obviously this is a generated file, so attached is a patch for templates/webapps/galaxy/workflow/run.mako that I propose you add to Galaxy. As you'll see it just adds a single try block and then ignores the exception, which I would say in this case is not actually a bad thing to do even if it is not the ideal fix. Should be fairly explanatory from the patch. Cheers, TIM Way way back in Jun 2012, Paul-Michael.Agapow at hpa.org.uk wrote: Looking for pointers on what might be causing this problem: A user had a moderately complicated workflow that when run under certain parameter values results in a traceback that ends: Module workflow_run_mako:232 in render_body for ic in oc.input_step.module.get_data_inputs(): AttributeError: 'WorkflowStep' object has no attribute 'module' After some puzzling, I realized one of the parameters was outside the allowed range (a max on an integer param) and that Galaxy was trying to render run.mako flagging up the error but erroring out. Why Galaxy tries to call this non-existent member is unclear to me. Any insight or places I should start exploring? Galaxy version: various (started with an 6-month old one, upgraded to latest production to see if it would fix error, it didn't) Hosting OS: CentOS 6 -- Paul Agapow (paul-michael.agapow at hpa.org.uk) Bioinformatics, Health Protection Agency (UK) -- Tim Booth tbo...@ceh.ac.uk NERC Environmental Bioinformatics Centre Centre for Ecology and Hydrology Maclean Bldg, Benson Lane Crowmarsh Gifford Wallingford, England OX10 8BB http://nebc.nerc.ac.uk +44 1491 69 2705 ___ Please keep all replies on the list by using reply all in your mail client. To manage your subscriptions to this and other Galaxy lists, please use the interface at: http://lists.bx.psu.edu/ To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/search/mailinglists/ ___ Please keep all replies on the list by using reply all in your mail client. To manage your subscriptions to this and other Galaxy lists, please use the interface at: http://lists.bx.psu.edu/ To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/search/mailinglists/