aiidalab / aiidalab/aiidalab-qe
Integrate new feature from aiida-core: paused in case unhandled errors occur
- Dominant language
- Python
- Stars
- 33
- Forks
- 25
- Avg merge
- 6h 7m
- Merged PRs (30d)
- 8
Description
See this PR: https://github.com/aiidateam/aiida-core/pull/7069
Integration of this feature into the QE app, copied from the comment by @giovannipizzi :
* We always switch on this feature in the app (if we also show what is going on visually, I don't see why we shouldn't. Worst case, the user will have a lot of paused calculations)
* In the process status, we monitor if any of the calculations is paused (we need to check recursively). If this is the case, where there is the "Kill" button (or close to the process tree if easier - but it would be better outside of the tabs, so it's always visible when the user is in the 4th step), we show a **very visible warning (e.g. with yellow background)** saying:
```
**ACTION NEEDED!** Some of the workflow steps were paused (note: some other steps are still running).
Typically, steps get automatically paused when there is an unexpected failure in the Quantum ESPRESSO execution that cannot be automatically fixed by AiiDA.
The steps that are currently paused are: [XXX], [XXX], [XXX].
You can click on them to inspect their output. Then, you can:
* try to [rerun all these paused steps by clicking here](#) (by "re-playing" the corresponding AiiDA processes), if you think that the error should self-recover (e.g., it was a node failure, and this was fixed in the meantime);
* kill the whole workflow with the red button above (including all steps that are still running), if the error is unrecoverable.
```
where:
* [XXX] are PKs of the paused processes. Ideally they should be links that allow to open the output of the process.
* the "rerun..." link will trigger a `verdi process play XXX XXX XXX` of all processes. I think a single button is OK to replay all of them, I don't see the point of replaying one by one.
* The substrings "(note: some other steps are still running)" and " (including all steps that are still running)" should only be visualized if there are still processed running.
* Ideally, we could show a different message if the workflow was paused by the user manually, instead of automatically by this mechanism. The "Replay all" button would still be very valuable (in this case I would check *any* process in the tree of subprocesses, not only workflows inheriting from BaseRestartWorkChain)
This should make everything self-explanatory.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.