Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Display invocation scheduling errors with more details #10309

Closed
mvdbeek opened this issue Sep 28, 2020 · 2 comments
Closed

Display invocation scheduling errors with more details #10309

mvdbeek opened this issue Sep 28, 2020 · 2 comments

Comments

@mvdbeek
Copy link
Member

mvdbeek commented Sep 28, 2020

galaxy.workflow.run ERROR 2020-09-28 04:37:55,594 Failed to schedule Workflow[id=<>,name=Workflow constructed from history 'imported: test2'], problem occurred on WorkflowStep[index=2,type=tool].
Traceback (most recent call last):
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/workflow/run.py", line 190, in invoke
    incomplete_or_none = self._invoke_step(workflow_invocation_step)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/workflow/run.py", line 266, in _invoke_step
    use_cached_job=self.workflow_invocation.use_cached_job)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/workflow/modules.py", line 1754, in execute
    workflow_resource_parameters=resource_parameters
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/execute.py", line 103, in execute
    execute_single_job(execution_slice, completed_jobs[i])
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/execute.py", line 71, in execute_single_job
    job, result = tool.handle_single_execution(trans, rerun_remap_job_id, execution_slice, history, execution_cache, completed_job, collection_info, flush_job=False)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/__init__.py", line 1656, in handle_single_execution
    raise e
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/__init__.py", line 1647, in handle_single_execution
    flush_job=flush_job,
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/__init__.py", line 1736, in execute
    return self.tool_action.execute(self, trans, incoming=incoming, set_output_hid=set_output_hid, history=history, **kwargs)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/actions/__init__.py", line 292, in execute
    history, inp_data, inp_dataset_collections, preserved_tags, all_permissions = self._collect_inputs(tool, trans, incoming, history, current_user_roles, collection_info)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/actions/__init__.py", line 259, in _collect_inputs
    inp_data, all_permissions = self._collect_input_datasets(tool, incoming, trans, history=history, current_user_roles=current_user_roles, collection_info=collection_info)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/actions/__init__.py", line 202, in _collect_input_datasets
    tool.visit_inputs(param_values, visitor)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/__init__.py", line 1523, in visit_inputs
    visit_input_values(self.inputs, values, callback)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/parameters/__init__.py", line 164, in visit_input_values
    visit_input_values(input.cases[values['__current_case__']].inputs, values, callback, new_name_prefix, label_prefix, parent_prefix=name_prefix, **payload)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/parameters/__init__.py", line 170, in visit_input_values
    callback_helper(input, input_values, name_prefix, label_prefix, parent_prefix=parent_prefix, context=context)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/parameters/__init__.py", line 131, in callback_helper
    new_value = callback(**args)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/actions/__init__.py", line 144, in visitor
    input_datasets[prefix + input.name] = process_dataset(value)
  File "/cvmfs/test.galaxyproject.org/galaxy/lib/galaxy/tools/actions/__init__.py", line 109, in process_dataset
    raise ItemAccessibilityException("User does not have permission to use a dataset (%s) provided for input." % data.id)
galaxy.exceptions.ItemAccessibilityException: User does not have permission to use a dataset (1872738) provided for input.

for instance is a good candidate that we can safely forward to the user. This happens when running a workflow on a shared history whose datasets are not actually shared.

Now we're only getting

Invocation scheduling failed - Galaxy administrator may have additional details in logs.

The job polling should also stop at this point, so users don't expect that things might still occur.

@mvdbeek
Copy link
Member Author

mvdbeek commented Sep 28, 2020

On top of that we should probably prevent submission in the UI ?

@mvdbeek mvdbeek self-assigned this Sep 28, 2020
jmchilton added a commit to jmchilton/galaxy that referenced this issue Oct 20, 2020
Shouldn't this fix galaxyproject#10309? This way the exception falls through the object collecting exceptions and reporting them back instead of short circuiting the workflow scheduling stuff.
@mvdbeek
Copy link
Member Author

mvdbeek commented Jun 13, 2023

Fixed as part of #14846

@mvdbeek mvdbeek closed this as completed Jun 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant