Matgenix / jobflow-remote

jobflow-remote is a Python package to run jobflow workflows on remote resources.
https://matgenix.github.io/jobflow-remote/
Other
25 stars 11 forks source link

An Error occurred during the command execution: ValueError No daemon runner document. #211

Open chiang-yuan opened 1 week ago

chiang-yuan commented 1 week ago

Thanks for developing such a great tool!

When I tried to run jf runner start, I got the following error:

An Error occurred during the command execution: ValueError No daemon runner document.
The auxiliary collection does not contain information about running daemon. Your database was likely set up or reset using an old version of Jobflow Remote. You can upgrade the database using the command "jf admin upgrade".

Running jf admin upgrade gives another error that has little message to debug:

An Error occurred during the command execution: TypeError expected string or bytes-like object, got 'NoneType'

jf project check --errors has passed without error. Not sure how to to debug this. Perhaps it is related to batch submission #172 ?

┏━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━┓
┃ DB id ┃ Name          ┃ State ┃ Job id  (Index)                           ┃ Worker       ┃ Last updated [PST] ┃
┡━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━┩
│ 1     │ MP GGA static │ READY │ aa0dfc19-6cdd-4296-9454-5c54319d0c9f  (1) │ batch_worker │ 2024-11-18 18:58   │
└───────┴───────────────┴───────┴───────────────────────────────────────────┴──────────────┴────────────────────┘
gpetretto commented 1 week ago

Hi @chiang-yuan,

thanks for following up and testing the batch functionality of jobflow-remote. Quick explanation: in the development version we have just introduced the jf admin upgrade functionality that allows us to introduce small backward incompatible changes to the DB, while allowing the users to (easily?) upgrade their DB. The code checks the current version of the installed package and will perform the upgrade if the version is 0.1.5. At the moment you are using the development version, so it does not manage to get a proper version number and the upgrade procedure fails. I should admit that I did not consider a solution for generic users for this case. We have a hidden option to jf admin upgrade used for development and testing that allows to manually specify the target version. Running jf admin upgrade --test-version-upgrade 0.1.5 should solve your issue for the time being. I will check what can be done to make this smoother also when using a development version.

chiang-yuan commented 6 days ago

Thanks @gpetretto !!! This solves the problem for now. I will test it soon!