Skip to content

LSP requests processed by protocolFilter.ts stall all other requests #12905

Open

Description

In protocolFilter.ts, we are intentionally sequencing the message handlers, to ensure async calls within them can complete before the next message is processed. That ensure our use of async doesn't cause messages to be delivered out of order (i.e. something file-specific delivered before didOpen is processed for that file). However, that appears to also be awaiting the results of request operations, causing the protocol filter to effectively stall all other requests (including those done via languageClient.sendRequest) whenever there is an outstanding request for one of the LSP requests processed there:

provideCompletionItem
resolveCompletionItem
provideSignatureHelp
provideDefinition
provideReferences
provideDocumentHighlights
provideDeclaration
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

Type

Projects

  • Status

    In progress

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions