Uploaded image for project: 'Pegasus'
  1. Pegasus
  2. PM-681

dashboard should display a workflow information not available page in case submit directories get deleted


    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major Major
    • master, 4.2
    • Affects Version/s: master
    • Component/s: Pegasus Dashboard
    • None
    • Environment:
      pegasus setup with population to a sqlite database per root workflow

      I have the dashboard running on my recent runs on obelix

      For one of the runs I moved the submit directory

      I then get an Internal Server Error as the dasboard cannot access the workflow specific database.


      Instead of throwing an internal server error we should have an error page that says that the directory / db URL not accessible

      Here is the log from the dashboard tool.

      DEBUG:netlogger.Pegasus.dashboard.WorkflowInfo.MasterDatabase:ts=2013-01-12T19:06:28.545438Z event=netlogger.Pegasus.dashboard.WorkflowInfo.MasterDatabase.close level=Debug
      ERROR:netlogger.Pegasus.dashboard.WorkflowInfo.WorkflowInfo:ts=2013-01-12T19:06:28.555521Z event=netlogger.Pegasus.dashboard.WorkflowInfo.WorkflowInfo.init level=Error msg="Error raised during database init: (OperationalError) unable to open database file"
      ERROR:_main_:Exception on /root/5/workflow [GET]
      Traceback (most recent call last):
      File "/usr/local/lib/python2.6/dist-packages/flask/app.py", line 1687, in wsgi_app
      response = self.full_dispatch_request()
      File "/usr/local/lib/python2.6/dist-packages/flask/app.py", line 1360, in full_dispatch_request
      rv = self.handle_user_exception(e)
      File "/usr/local/lib/python2.6/dist-packages/flask/app.py", line 1358, in full_dispatch_request
      rv = self.dispatch_request()
      File "/usr/local/lib/python2.6/dist-packages/flask/app.py", line 1344, in dispatch_request
      return self.view_functions[rule.endpoint](**req.view_args)
      File "/data/scratch/vahi/software/install/pegasus/default/bin/pegasus-dashboard", line 143, in workflow
      counts, details, statistics = dashboard.get_workflow_information (wf_id, wf_uuid)
      File "/data/scratch/vahi/software/install/pegasus/pegasus-4.2.0cvs/lib/pegasus/python/Pegasus/dashboard/Dashboard.py", line 295, in get_workflow_information
      workflow = queries.WorkflowInfo (self.__get_wf_db_url (), wf_id=wf_id, wf_uuid=wf_uuid)
      File "/data/scratch/vahi/software/install/pegasus/pegasus-4.2.0cvs/lib/pegasus/python/Pegasus/dashboard/WorkflowInfo.py", line 200, in _init_
      raise RuntimeError

            mayani Rajiv Mayani
            vahi Karan Vahi
            1 Start watching this issue