Skip to content

Frequently crash with textDocument/documentSymbol request on file save #3235

@amatosov-rbx

Description

@amatosov-rbx

Type: LanguageService
Issue is almost the same as #2209 but with newer version of cpptools and automatic restart of language server re-opening file

Describe the bug

  • OS and Version: macOS 10.14.3 (18D109)
  • VS Code Version: Version 1.31.1 (1.31.1)
  • C/C++ Extension Version: Version 1.31.1 (1.31.1)

When I'm editing a C++ source file, when I save the file, an error frequently occurs and for 5 times the language server crashes and restarts only after re-opening file, but frequently crashes after editing/saving file.

To Reproduce

  1. Open cpp file
  2. Switch to header file

Expected behavior
Language server doesn't crash or at least restarts silently

Screenshots
image

Additional context

cpptools log (one of many):

[Error - 10:44:22 AM] Connection to server got closed. Server will not be restarted.
[Error - 10:44:22 AM] Request textDocument/codeAction failed.
Error: Connection got disposed.
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:876:25)
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:71:35)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2150:42)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/main.js:150:15)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2137:18)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:226:26)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at StreamMessageReader.fireClose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:111:27)
	at Socket.listen.readable.on (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:151:46)
	at Socket.emit (events.js:187:15)
	at Pipe.Socket._destroy._handle.close [as _onclose] (net.js:596:12)
[Error - 10:44:22 AM] Request textDocument/codeAction failed.
Error: Connection got disposed.
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:876:25)
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:71:35)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2150:42)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/main.js:150:15)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2137:18)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:226:26)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at StreamMessageReader.fireClose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:111:27)
	at Socket.listen.readable.on (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:151:46)
	at Socket.emit (events.js:187:15)
	at Pipe.Socket._destroy._handle.close [as _onclose] (net.js:596:12)
[Error - 10:44:22 AM] Request textDocument/codeAction failed.
Error: Connection got disposed.
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:876:25)
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:71:35)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2150:42)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/main.js:150:15)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2137:18)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:226:26)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at StreamMessageReader.fireClose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:111:27)
	at Socket.listen.readable.on (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:151:46)
	at Socket.emit (events.js:187:15)
	at Pipe.Socket._destroy._handle.close [as _onclose] (net.js:596:12)
[Error - 10:44:22 AM] Request textDocument/codeAction failed.
Error: Connection got disposed.
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:876:25)
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:71:35)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2150:42)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/main.js:150:15)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2137:18)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:226:26)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at StreamMessageReader.fireClose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:111:27)
	at Socket.listen.readable.on (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:151:46)
	at Socket.emit (events.js:187:15)
	at Pipe.Socket._destroy._handle.close [as _onclose] (net.js:596:12)
[Error - 10:44:22 AM] Request textDocument/hover failed.
Error: Connection got disposed.
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:876:25)
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:71:35)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2150:42)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/main.js:150:15)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2137:18)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:226:26)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at StreamMessageReader.fireClose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:111:27)
	at Socket.listen.readable.on (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:151:46)
	at Socket.emit (events.js:187:15)
	at Pipe.Socket._destroy._handle.close [as _onclose] (net.js:596:12)
[Error - 10:44:22 AM] Request textDocument/codeAction failed.
Error: Connection got disposed.
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:876:25)
	at Object.dispose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:71:35)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2150:42)
	at LanguageClient.handleConnectionClosed (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/main.js:150:15)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-languageclient/lib/client.js:2137:18)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at closeHandler (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/main.js:226:26)
	at CallbackList.invoke (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:62:39)
	at Emitter.fire (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/events.js:120:36)
	at StreamMessageReader.fireClose (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:111:27)
	at Socket.listen.readable.on (/Users/amatosov/.vscode/extensions/ms-vscode.cpptools-0.21.0/node_modules/vscode-jsonrpc/lib/messageReader.js:151:46)
	at Socket.emit (events.js:187:15)
	at Pipe.Socket._destroy._handle.close [as _onclose] (net.js:596:12)

C/C++ log is full of

Failed to create IntelliSense client. Can't create intellisense client for <path to h or cpp file>
{
    "configurations": [
        {
            "name": "Mac",
            "includePath": [
                "${workspaceFolder}/Project/**",
                "${workspaceFolder}/../ThirdParty/**"
            ],
            "defines": [],
            "macFrameworkPath": [
                "/System/Library/Frameworks",
                "/Library/Frameworks",
                "${workspaceFolder}/../ThirdParty/**"
            ],
            "compilerPath": "/usr/bin/clang",
            "cStandard": "c11",
            "cppStandard": "c++14",
            "intelliSenseMode": "clang-x64"
        }
    ],
    "version": 4
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Language ServicebugfixedCheck the Milestone for the release in which the fix is or will be available.more info neededThe issue report is not actionable in its current state

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions