widgetti / solara

A Pure Python, React-style Framework for Scaling Your Jupyter and Web Apps
https://solara.dev
MIT License
1.6k stars 104 forks source link

fix: avoid closing a kernel twice by using a mutex #610

Closed maartenbreddels closed 2 weeks ago

maartenbreddels commented 2 weeks ago

A kernel could be close multiple times if the websocket was closed at the same time as the close beacon was send. This caused in CI KeyError on custom_storage.py when the kernel cleanup function was called twice. State managegment for pages is not protected by a mutex, so that it is thread safe.

render[bot] commented 2 weeks ago

Your Render PR Server URL is https://solara-stable-pr-610.onrender.com.

Follow its progress at https://dashboard.render.com/web/srv-cogf9htjm4es73ckjubg.