-
Notifications
You must be signed in to change notification settings - Fork 23
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
Use Dask instead of multiprocessing module #530
Conversation
027c090
to
ece6ccc
Compare
Kicking CI |
12993c1
to
d753850
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Generally looking good, just a couple of small non-blocking comments.
""" | ||
Placeholder method for a cleanup code to run when the server is stopping. | ||
""" | ||
pass |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need to keep this method if it does nothing?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes. BaseScheduler
is a base class / klass for schedulers, essentially an interface for all schedulers instantiated and used by SchedulerApp
. BaseScheduler.stop_extension
creates a placeholder for scheduler cleanup / stop_extension logic that is called from SchedulerApp.stop_extension
.
SchedulerApp.stop_extension
is a public method inherited from ExtensionApp
called by Jupyter Server when the server is stopping.
I implemented stop_extension
in default Scheduler
in Scheduler.stop_extension
to correctly terminate Dask and avoid JupyterLab process not shutting down immediately on interrupt as for example we've seen in Jupyter AI.
993f725
to
258c373
Compare
…ction into scheduler class at extension launch
Superseded by #553 |
Use Dask instead of multiprocessing module