-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Jupyter notebook for Parameter Sweep tutorial occasional cell timeout failures on Linux/Python 3.8 #1312
Comments
Just noting that I am seeing a similar issue in checks for PR #1244 : |
Based on my testing in #1314, the failures occur on Linux with Python 3.8 up for (up to) about half of the runs: |
It looks like the demo uses the "ConcurrentFutures" backend: watertap/tutorials/parameter_sweep_demo.ipynb Line 224 in a3eb077
|
Given that Python 3.9 seems to be working, here are the release notes for Python 3.9 about |
Based on our experience with #1211 it's almost certainly the case that the deadlock is occurring in the |
As a hack, the multiprocessing parallel back end seems to work fine: https://github.com/watertap-org/watertap/actions/runs/8080874093/job/22078190530 |
Given the available evidence I am leaning towards this being a bug in Python 3.8. Python 3.8 hits EOL in October 2024. How much resources should we devote to fixing this issue, when a work-around (use |
Thanks for running the checks @bknueven. Personally, I'd be more than happy to just consider this a Python 3.8 limitation, and not do anything until the time when we drop support for Python 3.8 beyond excluding the notebook from being tested in Python 3.8 CI jobs. |
Okay, I will implement the work around for Python 3.8 so this doesn't hold up further jobs. |
Just to be clear, as far as I'm concerned the "workaround" can be if: matrix.python-version == '3.8' && matrix.os == 'linux'`
run: rm tutorials/parameter_sweep_demo.ipynb in the GHA job where notebooks are tested, meaning I don't think we need to come up with a "proper" fix. |
I already had a work-around slightly more complex than this implemented (#1316) -- which should help any users of Python 3.8 not hit this same issue. |
…ap#1316) * try switching to MultiProcessing * updating tutorial comment * default to multiprocessing; make interface more forgiving
The text was updated successfully, but these errors were encountered: