-
Notifications
You must be signed in to change notification settings - Fork 273
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
LC continues to run if neovim crashes or is killed #1215
Comments
I don't know if there's much we can do if you |
The kill -9 is just to model it, really. I have to kill neovim when LC hangs when its LSP hangs (or I can kill LC), but this also happens when neovim itself crashes (which is, I agree, not all that often). Neovim's jobstart should create the child process with a pipe connected to the child's stdin, spawning a thread to read from the pipe and set the global abort flag when the read fails should be sufficient. I tried to do this myself but I found that in |
Cannot reproduce.
Which speaks "working as expected" to me; the Vim RPC pipe reader does catch the broken pipe condition and terminates, taking LS with it as well. @mqudsi are you sure you're observing the issue as described and not confusing something? Please recheck. Please also make sure to use the regular I also strongly agree with what @martskins has said: it's not reasonable to expect any specific behavior in response to
|
Just my 2 bits: You can detect if the parent has been changed or not (in case of kill -9 neovim, LC will have PID 1 as its parent). Related link: https://stackoverflow.com/a/12193625 |
Describe the bug
If the language client is running and working perfectly, active for the current buffer, and neovim crashes or is killed (
killall -9 nvim
),languageclient
and any processes it spawned continue to run indefinitely in the background.Environment
nvim --version
orvim --version
): 0.5.0-devgit rev-parse --short HEAD
): a734a05bin/languageclient --version
): 0.1.161reproduce the issue. Refer to an example here): n/a
rust-analyzer
, but n/a)To Reproduce
Steps to reproduce the behavior:
pidof languageclient
to confirm it hasn't exitedCurrent behavior
LC does not detect that parent (n)vim session has ended and continues to run.
Expected behavior
LC should detect (neo)vim has quit and quit as well.
The text was updated successfully, but these errors were encountered: