palantir / python-language-server

An implementation of the Language Server Protocol for Python
MIT License
2.6k stars 282 forks source link

100% CPU usage after some time #890

Open delfick opened 3 years ago

delfick commented 3 years ago

Hello,

After upgrading to python3.9 and big Sur, it appears pyls will start consuming 100% CPU after some time. What can I do to try and figure out why?

Minus some stuff specific to my project, my virtualenv I'm using with my project and editor tools are as follows

aiohttp==3.7.2
alembic==1.3.2
alt-pytest-asyncio==0.5.3
appdirs==1.4.4
async-timeout==3.0.1
attrs==20.3.0
bitarray==1.6.1
black==20.8b1
chardet==3.0.4
click==7.1.2
colorama==0.4.4
distlib==0.3.1
filelock==3.0.12
graphviz==0.15
greenlet==0.4.17
idna==2.10
iniconfig==1.1.1
jedi==0.17.2
kdtree==0.16
logutils==0.3.5
lru-dict==1.1.6
Mako==1.1.3
MarkupSafe==1.1.1
mccabe==0.6.1
mock==4.0.2
more-itertools==8.6.0
msgpack==1.0.0
multidict==5.0.2
mypy-extensions==0.4.3
neovim==0.3.1
noy-black==0.2.1
objgraph==3.5.0
packaging==20.4
parso==0.7.1
pathspec==0.8.1
pluggy==0.13.1
py==1.9.0
pycodestyle==2.6.0
pydocstyle==5.1.1
pyflakes==2.2.0
pylama==7.7.1
pynvim==0.4.2
pyparsing==2.4.7
pytest==6.1.2
pytest-helpers-namespace==2019.1.8
python-dateutil==2.8.1
python-editor==1.0.4
python-jsonrpc-server==0.4.0
python-language-server==0.36.1
rainbow-logging-handler==2.2.2
regex==2020.11.13
ruamel.yaml==0.16.12
six==1.15.0
snowballstemmer==2.0.0
SQLAlchemy==1.3.3
toml==0.10.2
tornado==6.1
typed-ast==1.4.1
typing-extensions==3.7.4.3
ujson==4.0.1
venvstarter==0.8.1
virtualenv==20.2.0
wcwidth==0.2.5
whirlwind-web==0.10.0
yarl==1.6.3
gabriel-tessier commented 3 years ago

+1 Running with the same symptoms CPU 100% after some time. But python 3.8 and Linux.

If you have some direction to try to figure out what happen and which information can be useful please ask.

delfick commented 3 years ago

I didn't find anything, my language server setup is properly broken for python. I'm just waiting for neovim 5.0 at this point which has a language server built in.

xrogaan commented 3 years ago

It is likely due to an outdated Jedi package.

delfick commented 3 years ago

it appears the latest version of python-language-server still doesn't support the next version of jedi (the setup.py says < 0.18.0)