You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
While the first shutdown request is blocked waiting for the gopls's response, extra restart requests were made.
As a result, as soon as the language server was restarted eventually, unblocked languageClient.stop calls are followed by dispose that race with subsequent start and mess with the restart sequence.
When the connection is set up dispose triggers shutdown requests. See multiple shutdown requests were sent to the language server back to back. (message id 1 and 2) immediately following the initialize request.
[Trace - 21:07:06.546 PM] Received notification 'window/logMessage'.
Params: {"type":3,"message":"2020/12/05 21:07:06 Shutdown session\n\tshutdown_session=1\n"}
[Error - 下午9:07:06] Starting client failed
Error: Connection is already listening
at throwIfListening (c:\Users\xiaoqing\.vscode\extensions\golang.go-0.19.0\dist\goMain.js:94014:19)
at Object.listen (c:\Users\xiaoqing\.vscode\extensions\golang.go-0.19.0\dist\goMain.js:94344:13)
at Object.listen (c:\Users\xiaoqing\.vscode\extensions\golang.go-0.19.0\dist\goMain.js:10479:34)
at c:\Users\xiaoqing\.vscode\extensions\golang.go-0.19.0\dist\goMain.js:12535:24
[Error - 下午9:07:06] Starting client failed
Error: Connection is already listening
at throwIfListening (c:\Users\xiaoqing\.vscode\extensions\golang.go-0.19.0\dist\goMain.js:94014:19)
at Object.listen (c:\Users\xiaoqing\.vscode\extensions\golang.go-0.19.0\dist\goMain.js:94344:13)
at Object.listen (c:\Users\xiaoqing\.vscode\extensions\golang.go-0.19.0\dist\goMain.js:10479:34)
at c:\Users\xiaoqing\.vscode\extensions\golang.go-0.19.0\dist\goMain.js:12535:24
[Trace - 21:07:06.706 PM] Sending request 'initialize - (0)'.
Params: {"processId":29660,"clientInfo": ... }
[Trace - 21:07:06.717 PM] Sending request 'shutdown - (1)'.
Params:
[Trace - 21:07:06.717 PM] Sending request 'shutdown - (2)'.
Params:
[Trace - 21:07:06.719 PM] Received response 'shutdown - (1)' in 1ms.
Result: null
[Trace - 21:07:06.719 PM] Received notification 'window/logMessage'.
Params: {"type":3,"message":"2020/12/05 21:07:06 server shutdown without initialization\n"}
[Trace - 21:07:06.719 PM] Received response 'shutdown - (2)' in 1ms.
Result: null
We need to prevent additional restart language server request while the previous language server restart request is still pending.
The text was updated successfully, but these errors were encountered:
From golang/go#43023.
The trace shows that multiple outstanding language server restart requests confuses subsequent language client start process.
While the first shutdown request is blocked waiting for the gopls's response, extra restart requests were made.
As a result, as soon as the language server was restarted eventually, unblocked languageClient.stop calls are followed by
dispose
that race with subsequentstart
and mess with the restart sequence.When the connection is set up
dispose
triggersshutdown
requests. See multipleshutdown
requests were sent to the language server back to back. (message id 1 and 2) immediately following the initialize request.We need to prevent additional restart language server request while the previous language server restart request is still pending.
The text was updated successfully, but these errors were encountered: