Skip to content

WIP: Implement a safe wrapper around ILanguageServerAdapter to ensure messages are only sent after initialization #1475

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

Closed
wants to merge 2 commits into from

Conversation

rjmholt
Copy link
Contributor

@rjmholt rjmholt commented May 12, 2021

No description provided.

@rjmholt rjmholt requested a review from andyleejordan May 12, 2021 22:48
@rjmholt rjmholt marked this pull request as draft May 13, 2021 15:53
@rjmholt rjmholt assigned rjmholt and unassigned rjmholt May 13, 2021
@andyleejordan
Copy link
Member

So it turns out this creates a deadlock here:

https://github.com/rjmholt/PowerShellEditorServices/blob/1d3e9da884bdd91ea3d33f88035b4a2a3e1d5824/src/PowerShellEditorServices/Services/PowerShellContext/PowerShellContextService.cs#L1888-L1893

The fix is in 1d3e9da

So with the additional logging in #1474 I've been able to rule out the executionStatusChanged notification as the cause of the deadlock. Still suspecting the runspaceChanged notification, but still testing...

@andyleejordan
Copy link
Member

The only news I really have is that when it doesn't repro, I never see the "runspace changed" notification. So our suspicion is half-proved?

@andyleejordan
Copy link
Member

Wait, @rjmholt I have info! When I get the issue to repro, it is always accompanied by:

Unexpected notification workspace/didChangeConfiguration {"Method":"workspace/didChangeConfiguration","Params":[[[[[[[[[]],[[]]]],[[]],[[]],[[]],[[]],[[]],[[[[]],[[]]]],[[]],[[]],[[]],[[[[]]]],[[]],[[]],[[[[]],[[]]]],[[[[]],[[]]]],[[[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]]]],[[[[]],[[]],[[]],[[]],[[]]]],[[[[]]]],[[[[]],[[]],[[]],[[]],[[]]]],[[[[]],[[]],[[]]]],[[[[]],[[]]]]]],[[[[[[]]]],[[[[]],[[]],[[]],[[]],[[]]]],[[[[]],[[]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[[]],[[]],[[]],[[]]]],[[]],[[]],[[]],[[]],[[]],[[[[]]]]]],[[[[[[]],[[]],[[]]]],[[]],[[]],[[]],[[]],[[]],[[[[]],[[]],[[null]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[[]],[[]],[[]]]],[[]]]]]]],"TraceParent":null,"TraceState":null,"$type":"Notification"}

@andyleejordan
Copy link
Member

Thanks for this Rob! Looks like we found the root issue elsewhere though, closing...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants