Multiple input file bug
Just filed as Issue #714 on bitbucket. I noticed that multiple input seems to be broken on workflows when selecting more that one file (a single file works). This is happening on our local instance, using Jan 27 galaxy-dist release, as well as both main/test.g2.bx.psu.edu Galaxy servers (latter sites just report a server error). Debugging output: URL: http://galaxy.igb.uiuc.edu/workflow/run?id=a799d38679e985db File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/exceptions/errormiddleware.py', line 143 in __call__ app_iter = self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/debug/prints.py', line 98 in __call__ environ, self.app) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/wsgilib.py', line 539 in intercept_output app_iter = application(environ, replacement_start_response) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/recursive.py', line 80 in __call__ return self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/framework/middleware/remoteuser.py', line 111 in __call__ return self.app( environ, start_response ) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/httpexceptions.py', line 632 in __call__ return self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/framework/base.py', line 160 in __call__ body = method( trans, **kwargs ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/controllers/workflow.py', line 1458 in run update_only=True, old_errors=old_errors ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/__init__.py', line 1460 in update_state value, error = check_param( trans, input, incoming_value, context ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/__init__.py', line 60 in check_param param.validate( filtered_value, trans.history ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/basic.py', line 1547 in validate validator.validate( value, history ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/validation.py', line 185 in validate if value and value.missing_meta( check = self.check, skip = self.skip ): AttributeError: 'list' object has no attribute 'missing_meta' chris
Can you share a workflow that's failing for you on test with me? I just tried a simple workflow with nothing but an input and FastQC and ran with multiple inputs successfully. Thanks! Dannon On Feb 2, 2012, at 11:15 PM, Fields, Christopher J wrote:
Just filed as Issue #714 on bitbucket. I noticed that multiple input seems to be broken on workflows when selecting more that one file (a single file works). This is happening on our local instance, using Jan 27 galaxy-dist release, as well as both main/test.g2.bx.psu.edu Galaxy servers (latter sites just report a server error). Debugging output:
URL: http://galaxy.igb.uiuc.edu/workflow/run?id=a799d38679e985db File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/exceptions/errormiddleware.py', line 143 in __call__ app_iter = self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/debug/prints.py', line 98 in __call__ environ, self.app) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/wsgilib.py', line 539 in intercept_output app_iter = application(environ, replacement_start_response) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/recursive.py', line 80 in __call__ return self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/framework/middleware/remoteuser.py', line 111 in __call__ return self.app( environ, start_response ) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/httpexceptions.py', line 632 in __call__ return self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/framework/base.py', line 160 in __call__ body = method( trans, **kwargs ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/controllers/workflow.py', line 1458 in run update_only=True, old_errors=old_errors ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/__init__.py', line 1460 in update_state value, error = check_param( trans, input, incoming_value, context ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/__init__.py', line 60 in check_param param.validate( filtered_value, trans.history ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/basic.py', line 1547 in validate validator.validate( value, history ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/validation.py', line 185 in validate if value and value.missing_meta( check = self.check, skip = self.skip ): AttributeError: 'list' object has no attribute 'missing_meta'
chris ___________________________________________________________ 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:
Minimal case is a single-node workflow with FastQC (tophat also had the same problem): http://test.g2.bx.psu.edu/u/cjfields/w/test maybe it's tool-specific? chris On Feb 3, 2012, at 1:10 AM, Dannon Baker wrote:
Can you share a workflow that's failing for you on test with me? I just tried a simple workflow with nothing but an input and FastQC and ran with multiple inputs successfully.
Thanks!
Dannon
On Feb 2, 2012, at 11:15 PM, Fields, Christopher J wrote:
Just filed as Issue #714 on bitbucket. I noticed that multiple input seems to be broken on workflows when selecting more that one file (a single file works). This is happening on our local instance, using Jan 27 galaxy-dist release, as well as both main/test.g2.bx.psu.edu Galaxy servers (latter sites just report a server error). Debugging output:
URL: http://galaxy.igb.uiuc.edu/workflow/run?id=a799d38679e985db File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/exceptions/errormiddleware.py', line 143 in __call__ app_iter = self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/debug/prints.py', line 98 in __call__ environ, self.app) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/wsgilib.py', line 539 in intercept_output app_iter = application(environ, replacement_start_response) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/recursive.py', line 80 in __call__ return self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/framework/middleware/remoteuser.py', line 111 in __call__ return self.app( environ, start_response ) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/httpexceptions.py', line 632 in __call__ return self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/framework/base.py', line 160 in __call__ body = method( trans, **kwargs ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/controllers/workflow.py', line 1458 in run update_only=True, old_errors=old_errors ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/__init__.py', line 1460 in update_state value, error = check_param( trans, input, incoming_value, context ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/__init__.py', line 60 in check_param param.validate( filtered_value, trans.history ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/basic.py', line 1547 in validate validator.validate( value, history ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/validation.py', line 185 in validate if value and value.missing_meta( check = self.check, skip = self.skip ): AttributeError: 'list' object has no attribute 'missing_meta'
chris ___________________________________________________________ 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:
Oh, I see what you're doing, thanks for clarifying. Add an Input Dataset step and it should work fine. The original intent for multiple input scaling was really designed explicitly for that scenario using the Input Dataset workflow steps and the fact that it works for some tools directly was a bit of a side effect. To be consistent across all tools and prevent errors like this, on the short term I'll correct the functionality to where it only displays in the case of Input Dataset steps. That said, it's definitely on the wishlist to expand multi-input capabilities and allow for things like paired dataset inputs, etc., and at that time I will revisit allowing direct dataset inputs as multiples. Thanks! -Dannon On Feb 3, 2012, at 12:17 PM, Fields, Christopher J wrote:
Minimal case is a single-node workflow with FastQC (tophat also had the same problem):
http://test.g2.bx.psu.edu/u/cjfields/w/test
maybe it's tool-specific?
chris
On Feb 3, 2012, at 1:10 AM, Dannon Baker wrote:
Can you share a workflow that's failing for you on test with me? I just tried a simple workflow with nothing but an input and FastQC and ran with multiple inputs successfully.
Thanks!
Dannon
On Feb 2, 2012, at 11:15 PM, Fields, Christopher J wrote:
Just filed as Issue #714 on bitbucket. I noticed that multiple input seems to be broken on workflows when selecting more that one file (a single file works). This is happening on our local instance, using Jan 27 galaxy-dist release, as well as both main/test.g2.bx.psu.edu Galaxy servers (latter sites just report a server error). Debugging output:
URL: http://galaxy.igb.uiuc.edu/workflow/run?id=a799d38679e985db File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/exceptions/errormiddleware.py', line 143 in __call__ app_iter = self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/debug/prints.py', line 98 in __call__ environ, self.app) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/wsgilib.py', line 539 in intercept_output app_iter = application(environ, replacement_start_response) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/recursive.py', line 80 in __call__ return self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/framework/middleware/remoteuser.py', line 111 in __call__ return self.app( environ, start_response ) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/httpexceptions.py', line 632 in __call__ return self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/framework/base.py', line 160 in __call__ body = method( trans, **kwargs ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/controllers/workflow.py', line 1458 in run update_only=True, old_errors=old_errors ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/__init__.py', line 1460 in update_state value, error = check_param( trans, input, incoming_value, context ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/__init__.py', line 60 in check_param param.validate( filtered_value, trans.history ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/basic.py', line 1547 in validate validator.validate( value, history ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/validation.py', line 185 in validate if value and value.missing_meta( check = self.check, skip = self.skip ): AttributeError: 'list' object has no attribute 'missing_meta'
chris ___________________________________________________________ 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:
yep, that works. modifying it to only display with 'input dataset' makes sense. Just curious, but how stable is the workflow API for IO nodes? For instance, I could see creating a custom input node for splitting data for parallel processing, then combining processed data into a final report. Is it just a tool? Thanks! chris On Feb 3, 2012, at 11:32 AM, Dannon Baker wrote:
Oh, I see what you're doing, thanks for clarifying. Add an Input Dataset step and it should work fine. The original intent for multiple input scaling was really designed explicitly for that scenario using the Input Dataset workflow steps and the fact that it works for some tools directly was a bit of a side effect.
To be consistent across all tools and prevent errors like this, on the short term I'll correct the functionality to where it only displays in the case of Input Dataset steps. That said, it's definitely on the wishlist to expand multi-input capabilities and allow for things like paired dataset inputs, etc., and at that time I will revisit allowing direct dataset inputs as multiples.
Thanks!
-Dannon
On Feb 3, 2012, at 12:17 PM, Fields, Christopher J wrote:
Minimal case is a single-node workflow with FastQC (tophat also had the same problem):
http://test.g2.bx.psu.edu/u/cjfields/w/test
maybe it's tool-specific?
chris
On Feb 3, 2012, at 1:10 AM, Dannon Baker wrote:
Can you share a workflow that's failing for you on test with me? I just tried a simple workflow with nothing but an input and FastQC and ran with multiple inputs successfully.
Thanks!
Dannon
On Feb 2, 2012, at 11:15 PM, Fields, Christopher J wrote:
Just filed as Issue #714 on bitbucket. I noticed that multiple input seems to be broken on workflows when selecting more that one file (a single file works). This is happening on our local instance, using Jan 27 galaxy-dist release, as well as both main/test.g2.bx.psu.edu Galaxy servers (latter sites just report a server error). Debugging output:
URL: http://galaxy.igb.uiuc.edu/workflow/run?id=a799d38679e985db File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/exceptions/errormiddleware.py', line 143 in __call__ app_iter = self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/debug/prints.py', line 98 in __call__ environ, self.app) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/wsgilib.py', line 539 in intercept_output app_iter = application(environ, replacement_start_response) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/recursive.py', line 80 in __call__ return self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/framework/middleware/remoteuser.py', line 111 in __call__ return self.app( environ, start_response ) File '/home/a-m/galaxy/galaxy-dist/eggs/Paste-1.6-py2.6.egg/paste/httpexceptions.py', line 632 in __call__ return self.application(environ, start_response) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/framework/base.py', line 160 in __call__ body = method( trans, **kwargs ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/web/controllers/workflow.py', line 1458 in run update_only=True, old_errors=old_errors ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/__init__.py', line 1460 in update_state value, error = check_param( trans, input, incoming_value, context ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/__init__.py', line 60 in check_param param.validate( filtered_value, trans.history ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/basic.py', line 1547 in validate validator.validate( value, history ) File '/home/a-m/galaxy/galaxy-dist/lib/galaxy/tools/parameters/validation.py', line 185 in validate if value and value.missing_meta( check = self.check, skip = self.skip ): AttributeError: 'list' object has no attribute 'missing_meta'
chris ___________________________________________________________ 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:
participants (2)
-
Dannon Baker
-
Fields, Christopher J