Subject: bug#61350: Eglot over Tramp freezes with large project

From: Michael Albinus <[email-masked]>
Date: Mon, 27 Feb 2023 08:53:47 +0100

João Távora <[email-masked]> writes:

Hi João,

> * I don't know how to obtain the pretty Backtrace that you Michael got.
>   Michael how do you get that??  Maybe you're using some tramp flag,
>   because debug-on-error and debug-on-quit don't work.

There's a trick with tramp-verbose. If you set it to 10, you get a *lot*
of traces in the debug buffer, plus a backtrace in case of errors or quit.

> * If I set
>
>     (setq tramp-ssh-controlmaster-options nil
>         tramp-use-ssh-controlmaster-options nil)
>
>   I _no longer_ experience the hang.  This is after visiting 5 or 6
>   files, trying some completion, M-. xref-find-definitions, etc.

Don't touch tramp-ssh-controlmaster-options, it is meant for internal purposes.

> Michael can you confirm that these are per-buffer values?  Would it
> make sense for Eglot to set them like so in its minor mode hook?

No, they are global IIRC. I haven't checked. Maybe we could use them as
connection-local variables, that needs further checks.

And it won't help if a user has enabled ControlMaster in her
~/.ssh/config. So we must speak about in the doc anyway.

> João

Best regards, Michael.