VSCode Perl::LanguageServer causes a process that consumes CPU
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 30/100
Línea de trabajo
Comienza reproduciendo el uso de CPU en reposo de Perl::LanguageServer en VSCode e inspecciona las llamadas repetidas a select que muestra strace. Usa los entornos indicados de Perl 5.36.0 y Linux como línea base; se considera terminado cuando se haya identificado la causa y se confirme que el master perl process ya no consume CPU mientras VSCode está inactivo.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
When running Perl::LanguageServer inside of VSCode there is a master perl that consumes about 100% of a CPU. Initially, this process fires off a number of pls processes, apparently parsing all of the Perl modules it can find and communicating that data to the master perl process bloating it up to 1.5G in my case. OK, I understand that. There's a lot of Perl code here. However, after it settles down and the pls processes go away the master perl process continues to chew on about 100% of one CPU, even if VSCode is essentially idle.
top - 10:47:37 up 14:32, 1 user, load average: 0.09, 0.19, 0.22
Tasks: 204 total, 3 running, 201 sleeping, 0 stopped, 0 zombie
%Cpu(s): 22.5 us, 4.3 sy, 0.1 ni, 72.8 id, 0.0 wa, 0.2 hi, 0.1 si, 0.0 st
MiB Mem : 7685.1 total, 427.8 free, 3963.5 used, 3293.8 buff/cache
MiB Swap: 1024.0 total, 942.9 free, 81.1 used. 3405.2 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4635 root 20 0 2069884 1.5g 8496 R 99.7 20.6 863:12.92 perl
4220 root 20 0 1070064 198816 47200 S 2.0 2.5 0:51.59 node
2021 root 20 0 895920 97960 16820 S 1.3 1.2 2:44.30 python3
Closing VSCode causes the master perl process to go away.
An strace of the master perl reveals:
select(16, [3 5 8], [], NULL, {tv_sec=3600, tv_usec=0}) = 1 (in [5], left {tv_sec=3599, tv_usec=999999})
select(16, [3 5 8], [], NULL, {tv_sec=3600, tv_usec=0}) = 1 (in [5], left {tv_sec=3599, tv_usec=999999})
select(16, [3 5 8], [], NULL, {tv_sec=3600, tv_usec=0}) = 1 (in [5], left {tv_sec=3599, tv_usec=999999})
select(16, [3 5 8], [], NULL, {tv_sec=3600, tv_usec=0}) = 1 (in [5], left {tv_sec=3599, tv_usec=999999})
select(16, [3 5 8], [], NULL, {tv_sec=3600, tv_usec=0}) = 1 (in [5], left {tv_sec=3599, tv_usec=999999})
over and over again.
Perl version: 5.36.0
OS: CloudLinux: 8.8 (also experienced on AlmaLinux 8.8 and CentOS 7)
- Lenguaje dominante
- R
- Estrellas
- 679
- Forks
- 119
- Merge medio
- 1 d 18 h
- PR fusionados (30 d)
- 30
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de REditorSupport/languageserver
-
Hierarchical outline broken since 0.3.17Posiblemente ocupada @renkun-ken la tomó hace 1 día. Abierto
Dificultad 4/5 1-2 días Aptitud para principiantes 48/100
REditorSupport/languageserver#814 · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
REditorSupport/languageserver#731 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
confirmed
Dificultad 3/5 1-2 días Aptitud para principiantes 65/100
REditorSupport/languageserver#771 · 5 comentarios ·
Los mantenedores suelen responder en 1 día
-
needs information
Dificultad 3/5 1-2 días Aptitud para principiantes 42/100
REditorSupport/languageserver#703 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
REditorSupport/languageserver#697 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de REditorSupport/languageserver
Issues similares
-
plot_components fails for logistic models with minmax scaling and no floorPosiblemente ocupada @RaphaelFakhri la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 4 días
-
add step by step plottingAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
epiverse-trace/tutorials#245 ·
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
databrickslabs/brickster#320 ·
Los mantenedores suelen responder en 3 días