Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in
  • Autosubmit API Autosubmit API
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 28
    • Issues 28
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 2
    • Merge requests 2
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Terraform modules
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Earth SciencesEarth Sciences
  • Autosubmit APIAutosubmit API
  • Issues
  • #16
Closed
Open
Issue created Dec 05, 2022 by Eric Ferrer@eferre1Developer

Error with "runs" request - Database job_data_t0n3.experiment_run corrupted

Hi, since the last week, I'm having an error with the next request that we used in the testing suite to create a performance comparison between two runs. It is only happening for the t0n3 experiment, so I think it is more of a random corruption of the database or similar, more than anything related to the latest changes to the API.

This is the request we use:

http://192.168.11.91:8081/runs/t0n3

I tried to access the request via browser (firefox) and this was the output:

 error:          true                                           
 error_message:  "invalid literal for int() with base 10: 'NA'" 
 runs:           []                                             

And here it is the error that the python code complains (it is out of range because it is an empty list due to the results shown above) due to this:

Traceback (most recent call last):
  File "./testing_suite.py", line 829, in <module>
    main()
  File "./testing_suite.py", line 726, in main
    historic_performance(my_experiments)
  File "./testing_suite.py", line 399, in historic_performance
    last_run = [run for run in historic_performance_metrics if run["run_id"] == max(run["run_id"] for run in historic_performance_metrics)][0]
IndexError: list index out of range

in API side:

     14 Traceback (most recent call last):
     15   File "/root/miniconda3/envs/autosubmit_api/lib/python3.7/site-packages/flask/app.py", line 2525, in wsgi_app
     16     response = self.full_dispatch_request()
     17   File "/root/miniconda3/envs/autosubmit_api/lib/python3.7/site-packages/flask/app.py", line 1822, in full_dispatch_request
     18     rv = self.handle_user_exception(e)
     19   File "/root/miniconda3/envs/autosubmit_api/lib/python3.7/site-packages/flask_cors/extension.py", line 165, in wrapped_function
     20     return cors_after_request(app.make_response(f(*args, **kwargs)))
     21   File "/root/miniconda3/envs/autosubmit_api/lib/python3.7/site-packages/flask/app.py", line 1820, in full_dispatch_request
     22     rv = self.dispatch_request()
     23   File "/root/miniconda3/envs/autosubmit_api/lib/python3.7/site-packages/flask/app.py", line 1796, in dispatch_request
     24     return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
     25   File "/root/miniconda3/envs/autosubmit_api/lib/python3.7/site-packages/autosubmit_api/app.py", line 241, in get_runs
     26     result = CommonRequests.get_experiment_runs(expid)
     27   File "/root/miniconda3/envs/autosubmit_api/lib/python3.7/site-packages/autosubmit_api/experiment/common_requests.py", line 1492, in get_experiment_runs
     28     raise exp
     29   File "/root/miniconda3/envs/autosubmit_api/lib/python3.7/site-packages/autosubmit_api/experiment/common_requests.py", line 1438, in get_experiment_runs
     30     experiment_runs = experiment_history.manager.get_experiment_runs_dcs() # job_data_structure.get_experiment_runs()
     31   File "/root/miniconda3/envs/autosubmit_api/lib/python3.7/site-packages/autosubmit_api/history/database_managers/experiment_history_db_manager.py", line 219, in get_experiment_runs_dcs
     32     return [ExperimentRun.from_model(row) for row in experiment_run_rows]
     33   File "/root/miniconda3/envs/autosubmit_api/lib/python3.7/site-packages/autosubmit_api/history/database_managers/experiment_history_db_manager.py", line 219, in <listcomp>
     34     return [ExperimentRun.from_model(row) for row in experiment_run_rows]
     35   File "/root/miniconda3/envs/autosubmit_api/lib/python3.7/site-packages/autosubmit_api/history/data_classes/experiment_run.py", line 115, in from_model
     36     experiment_run.finish = int(row_dict.get('finish', 0))

Can you take a look @jberlin? Thanks.

Edited Apr 27, 2023 by jberlin
Assignee
Assign to
Time tracking