Skip to content

Commit

Permalink
Fix resume_paused_jobs if no session provided
Browse files Browse the repository at this point in the history
No session means no history.
Fixes #18639:
```
AttributeError: 'NoneType' object has no attribute 'resume_paused_jobs'
(1 additional frame(s) were not displayed)
...
  File "galaxy/web/framework/middleware/error.py", line 167, in __call__
    app_iter = self.application(environ, sr_checker)
  File "galaxy/web/framework/middleware/statsd.py", line 29, in __call__
    req = self.application(environ, start_response)
  File "galaxy/web/framework/base.py", line 174, in __call__
    return self.handle_request(request_id, path_info, environ, start_response)
  File "galaxy/web/framework/base.py", line 268, in handle_request
    body = method(trans, **kwargs)
  File "galaxy/webapps/galaxy/controllers/history.py", line 249, in resume_paused_jobs
    history.resume_paused_jobs()

Uncaught Exception
```
  • Loading branch information
mvdbeek committed Aug 2, 2024
1 parent 5ae1363 commit 7746703
Showing 1 changed file with 9 additions and 13 deletions.
22 changes: 9 additions & 13 deletions lib/galaxy/webapps/galaxy/controllers/history.py
Original file line number Diff line number Diff line change
Expand Up @@ -237,21 +237,17 @@ def purge_deleted_datasets(self, trans):
)
return trans.show_error_message("Cannot purge deleted datasets from this session.")

@web.expose
@web.expose_api_anonymous
def resume_paused_jobs(self, trans, current=False, ids=None, **kwargs):
"""Resume paused jobs the active history -- this does not require a logged in user."""
"""Resume paused jobs for the active history -- this does not require a logged in user."""
if not ids and string_as_bool(current):
histories = [trans.get_history()]
refresh_frames = ["history"]
else:
raise NotImplementedError("You can currently only resume all the datasets of the current history.")
for history in histories:
history.resume_paused_jobs()
trans.sa_session.add(history)
with transaction(trans.sa_session):
trans.sa_session.commit()
return trans.show_ok_message("Your jobs have been resumed.", refresh_frames=refresh_frames)
# TODO: used in index.mako
history = trans.get_history()
if history:
history.resume_paused_jobs()
return trans.show_ok_message("Your jobs have been resumed.")
raise exceptions.RequestParameterInvalidException(
"You can currently only resume all the datasets of the current history."
)

@web.expose_api
@web.require_login("rename histories")
Expand Down

0 comments on commit 7746703

Please sign in to comment.