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
As far as I understand, Merlin doesn't cancel any incoming queries. I.e., when using Merlin, cancellation has to be done on the editor's side. LSP does have a cancellation workflow, but only on the level of the query queue. Its good impact on performance shows that it's a good thing to have cancellation on the server side.
We can improve the behavior of both Merlin and LSP wrt cancelation by implementing cancelation on the level of the query execution: Before starting a next heavy task, Merlin checks whether a new query is in and, if so, cancels the ongoing query execution.
First, most simple approach:
Cancel the whole execution and throw away the partial results.
Possibly, next, we can see if we want to improve that:
Introduce the notion of a partially typed buffer and store partial typing results.
The text was updated successfully, but these errors were encountered:
As far as I understand, Merlin doesn't cancel any incoming queries. I.e., when using Merlin, cancellation has to be done on the editor's side. LSP does have a cancellation workflow, but only on the level of the query queue. Its good impact on performance shows that it's a good thing to have cancellation on the server side.
We can improve the behavior of both Merlin and LSP wrt cancelation by implementing cancelation on the level of the query execution: Before starting a next heavy task, Merlin checks whether a new query is in and, if so, cancels the ongoing query execution.
First, most simple approach:
Possibly, next, we can see if we want to improve that:
The text was updated successfully, but these errors were encountered: