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
My gopls got stuck with "no room in queue" errors because the "workspace/configuration" call gopls made to Emacs never got a response. Emacs didn't respond because I had an error in my config, but it seems like we either need a timeout or more goroutines to avoid getting stuck in the case the server doesn't respond properly.
This abandons the limited size queue
Instead we kick a go-routine per request, but have each request wait for the
previous request to say it is okay to continue. This allows each request to
control when it is finished with tasks that required strict ordering without
every blocking the routine that handles replies.
It also protects against repeated or missing replies.
Fixesgolang/go#32631Fixesgolang/go#32589Fixesgolang/go#32467Fixesgolang/go#32360Fixesgolang/go#31977
Change-Id: Icd071620052351ec7f8fac136f1b8e3f97d4bb2d
Reviewed-on: https://go-review.googlesource.com/c/tools/+/183718
Run-TryBot: Ian Cottrell <[email protected]>
TryBot-Result: Gobot Gobot <[email protected]>
Reviewed-by: Rebecca Stambler <[email protected]>
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
My gopls got stuck with "no room in queue" errors because the "workspace/configuration" call gopls made to Emacs never got a response. Emacs didn't respond because I had an error in my config, but it seems like we either need a timeout or more goroutines to avoid getting stuck in the case the server doesn't respond properly.
/cc @ianthehat
The text was updated successfully, but these errors were encountered: