Closed
Description
Also posted on the extension repo in case fix needs to be with them: REditorSupport/vscode-R#902
OS/Web Information
- Web Browser: Safari iOS, Safari macOS, and Chrome macOS
- Local OS: iOS, macOS
- Remote OS: Ubuntu (Docker)
- Remote Architecture: Kubernetes
code-server --version
: 3.12.0
Steps to Reproduce
- Use code-server 3.12.0, vscode-R version 2.3.4
- Create an R terminal
- Close the R terminal
- Start another R terminal
- helpServer.R instances will keep piling up even if the original extensionHost was already killed.
Expected
- Expect only one helpServer.R child process to persist for the whole session.
- When extensionhost killed hlepServer.R is not orphaned
Actual
Orphaned processes remain:
> ps aux | grep helpServer.R
565 ? S 0:00 /bin/sh -c /usr/local/bin/R --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
566 ? Sl 0:23 /usr/local/lib/R/bin/exec/R --no-save --no-restore --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
723 ? S 0:00 /bin/sh -c /usr/local/bin/R --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
724 ? Sl 0:22 /usr/local/lib/R/bin/exec/R --no-save --no-restore --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
1464 ? S 0:00 /bin/sh -c /usr/local/bin/R --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
1465 ? Sl 0:05 /usr/local/lib/R/bin/exec/R --no-save --no-restore --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
Orphaned helpServer.R processes are leaking when opening and closing multiple R terminals in code-server.
> ps aux | grep helpServer.R
565 ? S 0:00 /bin/sh -c /usr/local/bin/R --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
566 ? Sl 0:23 /usr/local/lib/R/bin/exec/R --no-save --no-restore --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
723 ? S 0:00 /bin/sh -c /usr/local/bin/R --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
724 ? Sl 0:22 /usr/local/lib/R/bin/exec/R --no-save --no-restore --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
1464 ? S 0:00 /bin/sh -c /usr/local/bin/R --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
1465 ? Sl 0:05 /usr/local/lib/R/bin/exec/R --no-save --no-restore --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
Inspecting the tree for one of the orphaned processes, it's clear that they are orphaned and no longer connected to the original code-server process.
> pstree -psa 566
s6-svscan,1 -t0 /var/run/s6/services
└─sh,565 -c /usr/local/bin/R --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
└─R,566 --no-save --no-restore --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
├─{R},574
├─{R},575
└─{R},576
As opposed to a newly created R terminal:
> pstree -psa 2056
s6-svscan,1 -t0 /var/run/s6/services
└─s6-supervise,414 vscode
└─node,1672 /usr/lib/code-server --auth none --disable-telemetry --bind-addr 0.0.0.0:8788
└─node,1706 /usr/lib/code-server --auth none --disable-telemetry --bind-addr 0.0.0.0:8788
└─node,1724 /usr/lib/code-server/vendor/modules/code-oss-dev/out/vs/server/fork
└─node,1935 /usr/lib/code-server/vendor/modules/code-oss-dev/out/bootstrap-fork --type=extensionHost
└─sh,2055 -c /usr/local/bin/R --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
└─R,2056 --no-save --no-restore --silent --slave --no-save --no-restore -f /home/tjpalanca/.local/share/code-server/extensions/ikuyadeu.r-2.3.4/R/help/helpServer.R
├─{R},2064
├─{R},2065
└─{R},2066
Notes
This issue can be reproduced in VS Code: No, this works well on vanilla VS Code.
Metadata
Metadata
Assignees
Labels
No labels