-
Notifications
You must be signed in to change notification settings - Fork 30.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
VSCode since 1.43 freezes on deleting line in c++ file #92369
Comments
Perhaps related, but the newest release seems to freeze on my C++ repo all the time. |
@Yanpas how do things look when you run with @vballworld are you also using the ccls extension ? can you try with |
Can't reproduce, for me it only happened 3 times (almost in a row). According to gdb stack trace I bet it's regex-killer (DOS) from cpp grammar. https://github.com/jeff-hykin/cpp-textmate-grammar |
Do you know how to inspect electron's app memory dump? Specifically getting v8 stack traces. AFAIK chromium is able to hold several virtual machines in one process. That would help in future. |
@Yanpas can you raise an issue with that extension if you think the crash originates from there.
You can use https://github.com/nodejs/llnode for it |
I doubt that it's extension fault cause I see main gui process hanging inside some regexp code. ccls is just a language server, with semantic coloring is disabled that didn't receive any updates for a long time. I'll try to get some steps to reproduce, currently playing with that file. |
llnode didn't help, maybe there is no debug symbols in binaries. Here is a snippet which I was editing and got vscode hanged:
last lines of /home/yan/.config/Code/logs/20200310T183724/renderer8.log ( the process started at 20:11 )
The line at which regexp is working:
Will try to get this bug without svn extension and without ccls. Opening this file without a workspace and any extension seems to work fine |
Well, without steps to reproduce this becomes insane. The last time I faced this bug was after enabling svn-scm extension ( @JohnstonCode) after 5 minutes of playing with editor trying to catch this bug with ccls extension on. After several vscode restarts and trying to reproduce the bug in the same fashion (enable svn) I faced freeze for 3-4 seconds and warning in devtools saying smth like 'ExtensionHost: warning using Buffer constructor is deprecated'. @vballworld can you provide some steps to reproduce? Im afraid I can't provide anything else... |
Here is a profile, vsocde didn't freeze, but I felt lags (77 milliseconds of OnigScanner) at the top of the call stack! Can it help anyhow? |
Grammars can cause freezes like this, but if the other extensions are required for the freeze to happen then that is suspicious. Also, grammar related freezes tend to be reproducible 100% of the time. |
Yep, this line causes a lot of lags! Just open new editor without any extension and open c++ file.
Line, again: |
@Yanpas thank you for the excellent root-causing! I can reproduce the issue with that line. |
Filed in the repo that owns the grammar: jeff-hykin/better-cpp-syntax#460 |
And here is the real regex-killer:
|
And my last two cents: I guess this issue must be in the recovery release ( 1.43.1 ) and I would just roll back grammar to the previous version. |
If we do include it in the recovery release, then yes I'll just roll back the grammar. |
Fix is in the release branch. |
Verified in 1.43.1 fe22a96 2020-03-18T07:01:41.240Z |
Steps to Reproduce:
Can't upload file. But I'm using vscode with ccls extension editing c++17 source code.
After I hit keyboard shortcut "delete current line" several times I often get vscode window to stuck in some infinite loop. The process that is stuck has the following cmdline:
GDB backtrace:
Most probably it's due to the recent update
Does this issue occur when all extensions are disabled?: Yes/No
The text was updated successfully, but these errors were encountered: