Skip to content

Problems with process handling? #499

Closed
@hasufell

Description

@hasufell

Subject of the issue

HLS doesn't seem to shut down all processes. After a while of using it in gvim I seem to have multiple HLS processes. This happens very frequently (although only one editor is opened and the by default no server is started). When I tell my client to shut down the server, only one of those processes will exit and haskell-language-server-wrapper will always remain active.

This happens with multiple clients:

  • coc.nvim
  • vim-lsp
  • LanguageClient-neovim

To me, it's not clear what the issue is:

  1. if HLS is not supposed to spawn multiple processes
  • why does this happen across many clients? Does the server confuse them into thinking it's exited and needs to be respawned?
  1. if HLS is supposed to spawn multiple processes
  • then it seems the server doesn't correctly process the exit message
  1. it could still be all 3 clients are buggy?

Your environment

haskell-language-server version: 0.5.1.0 (GHC: 8.10.1) (PATH: /mnt/sdd2/.ghcup/bin/haskell-language-server-wrapper-0.5.1) (GIT hash: e3fe0e7546aa91e44cc56cfe8ec078a026cf533a)
Tool versions found on the $PATH
cabal:		3.4.0.0
stack:		2.3.3
ghc:		8.8.4

Steps to reproduce

Use hls for a while and observe processes, then try to issue an exit message via the client.

Expected behaviour

All processes exit.

Actual behaviour

Only one process exits.

Include debug information

I currently don't have more isolated debug info. I'll try next time it happens.

Metadata

Metadata

Assignees

No one assigned

    Labels

    performanceIssues about memory consumption, responsiveness, etc.status: needs infoNot actionable, because there's missing information

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions