Issues running on server (with Helix) #1227
-
I use Helix a lot on my own laptop, but for my next university class I have to do all my work while logged into a university server. We are allowed to use any terminal based editor and I wanted to use Helix. As we don't have sudo permissions, I installed the latest version of Helix by downloading and
This same error occurs when using the Linux version (the one with the binary + the runtime folder). I am not really sure what to do to try to fix this as it does not happen on my laptop (when using the same version of Helix, installed the same way). I also tried a blank/default config and I tried turning off the LSP. The stack trace points to a particular place in a dependency nucleo, which seems to be helix' own implementation of a fuzzy finder. Specifically it is this part in the code: https://github.com/helix-editor/nucleo/blob/master/src/worker.rs#L59C1-L63C51
I tried running with Thanks in advance for any help! The full backtrace (doesn't look too much more helpful):
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 3 replies
-
My guess is that your university server has a tighter limit on the number of user processes -- which includes threads on Linux. See what
This only has an effect when the threads are otherwise unspecified, but the nucleo code is explicitly setting AFAICS, the helix picker code always passes
You could set the CPU affinity to reduce But ultimately, I think you'll have to talk with the Helix developers about the way they're creating their worker pools. |
Beta Was this translation helpful? Give feedback.
My guess is that your university server has a tighter limit on the number of user processes -- which includes threads on Linux. See what
ulimit -u
says, and check if that's lower than on your laptop. It may also be that the server has a much higher number of CPUs, so the rayon pool is attempting to create more threads in the first place.This only has an effect when the threads are otherwise unspecified, but the nucleo code is explicitly setting
worker_threads
itself. It has anOption
parameter for that, but otherwise falls back tostd::thread::available_parallelism()
, or a final default 4.AFAICS, the helix picker code a…