Skip to content
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

Display some error message about the fact that some remote kernels are no longer usable to avoid long spinnings of kernels in kernel picker #15931

Open
p-i- opened this issue Aug 9, 2024 · 4 comments
Assignees
Labels
bug Issue identified by VS Code Team member as probable bug notebook-kernel-picker

Comments

@p-i-
Copy link

p-i- commented Aug 9, 2024

Type: Bug

In my .ipynb I select a working kernel and can execute cells. However the kernel-picker spins for an additional 7+ minutes.

It turns out I had a dead/zombie kernel (http://10.3.0.1:6666/) -- removing it fixed the issue.

My own guess: When the kernel-picker is initially clicked, and the user has to choose which kernel to use, presumably VSCode attempts to communicate with each kernel in its list, in order to populate a list of available kernels. Maybe it launches a thread for each. And the kernel-picker icon is set to spin (🔄) until ALL have completed.

SUGGESTION 1: Before the user has made a selection, for each kernel in the list indicate the STATE of that kernel, maybe with icons: ✅ (ready to use), 🔄 (spinning), ❌ (failed)

SUGGESTION 2: When the user selects a kernel, any other threads should be cancelled, and the kernel-picker icon should reflect the status of the SELECTED kernel.

PS Issue was originally reported in #15911

I'm creating a fresh issue as there's a lot of fluff in that thread (as @DonJayamanne and I figured out which symptoms are (ir)relevant).

VS Code version: Code 1.92.0 (b1c0a14de1414fcdaa400695b4db1c0799bc3124, 2024-07-31T23:26:45.634Z)
OS version: Darwin arm64 23.5.0
Modes:

System Info
Item Value
CPUs Apple M2 (8 x 2400)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off
Load (avg) 1, 2, 2
Memory (System) 24.00GB (2.35GB free)
Process Argv --crash-reporter-id f10d97cd-2115-4dba-a34a-07be9312995a
Screen Reader no
VM 0%
Extensions (21)
Extension Author (truncated) Version
dvt-remote-ssh ami 1.0.0
nestedtext bma 2.0.0
githistory don 0.6.20
copilot Git 1.221.1038
copilot-chat Git 0.19.2024073102
vsc-python-indent Kev 1.18.0
rainbow-csv mec 3.12.0
vscode-docker ms- 1.29.1
debugpy ms- 2024.10.0
python ms- 2024.12.2
vscode-pylance ms- 2024.8.1
jupyter ms- 2024.7.0
jupyter-keymap ms- 1.1.2
jupyter-renderers ms- 1.0.19
vscode-jupyter-cell-tags ms- 0.1.9
vscode-jupyter-slideshow ms- 0.1.6
remote-containers ms- 0.380.0
remote-ssh ms- 0.113.1
remote-ssh-edit ms- 0.86.0
remote-explorer ms- 0.4.3
yaml-cloudformation-highlighter paq 2.0.4

(1 theme extensions excluded)

A/B Experiments
vsliv368cf:30146710
vspor879:30202332
vspor708:30202333
vspor363:30204092
vstes627:30244334
vscorecescf:30445987
vscod805cf:30301675
binariesv615:30325510
vsaa593cf:30376535
py29gd2263:31024239
vscaac:30438847
c4g48928:30535728
azure-dev_surveyone:30548225
2i9eh265:30646982
962ge761:30959799
pythongtdpath:30769146
welcomedialog:30910333
pythonnoceb:30805159
asynctok:30898717
pythonregdiag2:30936856
pythonmypyd1:30879173
2e7ec940:31000449
pythontbext0:30879054
accentitlementst:30995554
dsvsc016:30899300
dsvsc017:30899301
dsvsc018:30899302
cppperfnew:31000557
dsvsc020:30976470
pythonait:31006305
dsvsc021:30996838
jg8ic977:31013176
pythoncenvpt:31062603
a69g1124:31058053
dvdeprecation:31068756
dwnewjupytercf:31046870
impr_priority:31102340
refactort:31108082
ccplc:31103425
pythonrstrctxt:31112756
wkspc-onlycs-c:31111717
wkspc-ranged-c:31111712

Copy link

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.92.1. Please try upgrading to the latest version and checking whether this issue remains.

Happy Coding!

@p-i-
Copy link
Author

p-i- commented Aug 9, 2024

@vs-code-engineering bot: I'm unable to easily reproduce, as I've since removed the zombie kernel.

@vs-code-engineering vs-code-engineering bot added the triage-needed Issue needs to be triaged label Aug 9, 2024
@DonJayamanne DonJayamanne transferred this issue from microsoft/vscode Aug 9, 2024
@DonJayamanne DonJayamanne changed the title .ipynb kernel-picker icon spinning on zombie kernel when working kernel is already selected Display some error message about the fact that some remote kernels are no longer usable to avoid long spinnings of kernels in kernel picker Aug 9, 2024
@DonJayamanne
Copy link
Contributor

@p-i-
The other issues had all of the information and that was actually useful and was also in the correct repo
Moving back to Jupiter extension

@DonJayamanne DonJayamanne added bug Issue identified by VS Code Team member as probable bug notebook-kernel-picker and removed triage-needed Issue needs to be triaged labels Aug 10, 2024
@p-i-
Copy link
Author

p-i- commented Aug 10, 2024

My thinking was that there is a maybe a problem more fundamental than the failing to report unresponsive kernels -- the problem that once the user has selected a working kernel, the picker-icon is not reflecting the state of the selected kernel. And I think logically it should be.

Yes it would also be nice to be notified of any unresponsive kernel.

When the user clicks the picker to select a kernel, presumably they want to see a list of available kernels. And next to each item, an icon showing the status of this item, which I imagine would be something like:

  • currently running (🟢?)
  • responsive (✅?)
  • querying-in-progress / spinning (🔄)
  • unresponsive / given-up-trying (⚠️ ! etc.)
  • certified dead (❌?) (not sure if this makes sense)

And these stati would be refreshed in realtime.
And whichever kernel they click, the ongoing status is now represented by the picker-icon.

I didn't want to dilute the original issue, so posted a fresh one, linking back to the original. Maybe was my mistake to close the original one.

Anyway, I have nothing further useful to contribute to this topic, and so will leave it in the capable hands and minds of the VSCode team (thankyou for all your hard work!).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Issue identified by VS Code Team member as probable bug notebook-kernel-picker
Projects
None yet
Development

No branches or pull requests

3 participants