I/O error cause db tables to be corrupted
In the CLimate DT VM logs I noticed that due to I/O errors, the background tasks will fail in further operations. Something that we should be aware of.
Here is one example:
Traceback (most recent call last):
File "/appl/soft/4.0.0b2/lib64/python3.9/site-packages/autosubmit_api-4.0.0b2-py3.9.egg/autosubmit_api/experiment/common_db_requests.py", line 263, in create_many_job_times
conn.commit()
sqlite3.OperationalError: disk I/O error
Error on Insert : OperationalError
Traceback (most recent call last):
File "/appl/soft/4.0.0b2/lib64/python3.9/site-packages/autosubmit_api-4.0.0b2-py3.9.egg/autosubmit_api/experiment/common_db_requests.py", line 260, in create_many_job_times
cur.executemany(sql, list_job)
sqlite3.DatabaseError: database disk image is malformed
Error on Insert : DatabaseError
Traceback (most recent call last):
File "/appl/soft/4.0.0b2/lib64/python3.9/site-packages/autosubmit_api-4.0.0b2-py3.9.egg/autosubmit_api/experiment/common_db_requests.py", line 260, in create_many_job_times
cur.executemany(sql, list_job)
sqlite3.DatabaseError: database disk image is malformed
Error on Insert : DatabaseError
Traceback (most recent call last):
File "/appl/soft/4.0.0b2/lib64/python3.9/site-packages/autosubmit_api-4.0.0b2-py3.9.egg/autosubmit_api/experiment/common_db_requests.py", line 260, in create_many_job_times
cur.executemany(sql, list_job)
sqlite3.DatabaseError: database disk image is malformed
Luckily, in this last example, the table is truncated every time it is populated (which is inefficient). So, the corrupted table is fixed on the next execution.