Skip to content
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

intellisense performance poor in Omnisharp 1.37.2 #1982

Closed
devhawk opened this issue Oct 13, 2020 · 13 comments · Fixed by #1984
Closed

intellisense performance poor in Omnisharp 1.37.2 #1982

devhawk opened this issue Oct 13, 2020 · 13 comments · Fixed by #1984

Comments

@devhawk
Copy link

devhawk commented Oct 13, 2020

VSCode on my machine updated to Omnisharp 1.37.2 this afternoon. Intellisense performance has fallen off a cliff. Operations that were instant before are now taking upwards of 10 seconds, making intellisense shortcuts basically unusable.

is there some type of log I can capture to assist in debugging?

@filipw
Copy link
Member

filipw commented Oct 13, 2020

did you upgrade from 1.37.1 to 1.37.2 or from some other version? there were no major changes to completion in 1.37.2.

you can set omnisharp.loglevel: "trace" in settings and capture the log from omnisharp log panel but it doesn't contain any timings. it would be best if you could share the affected project - is this on every project type that you experience this or just on a specific one?

@devhawk
Copy link
Author

devhawk commented Oct 13, 2020

I didn't manually upgrade, I just noticed that the vscode extension was updating omnisharp, so I'm not sure what version it was upgrading from.

I'm only working on one project right now, I can check other projects tomorrow. This is the project / branch that I noticed the issue: https://github.com/neo-project/neo-express/tree/devhawk/nxp

@filipw
Copy link
Member

filipw commented Oct 13, 2020

thanks, you are right, I can repro this using the project you link on a Mac (on Windows it performs very good).

@JoeRobich @333fred any ideas?
for example on this line https://github.com/neo-project/neo-express/blob/master/src/neo-express/BlockchainOperations.cs#L38 typing wallets. and then pressing cmd+space, it takes forever for the completion list to be populated. this happens with import completions switched off too

@devhawk
Copy link
Author

devhawk commented Oct 13, 2020

thanks, you are right, I can repro this using the project you link on a Mac (on Windows it performs very good).

FWIW, I'm using windows

@filipw
Copy link
Member

filipw commented Oct 13, 2020

actually you are right.

looks like it was regressed by #1962

Switching to "omnisharp.path": "1.37.2-beta.105" still has good performance, and there is only #1970 (which is LSP specific so not related) and #1962 between 1.37.2-beta.105 and 1.37.2.

@filipw
Copy link
Member

filipw commented Oct 13, 2020

1.37.2-beta.105
completion-good

1.37.2
completion-bad

@333fred
Copy link
Contributor

333fred commented Oct 13, 2020

Are you sure you mean #1962? Did we already do a release with that in it?

@david-driscoll
Copy link
Member

Yeah we just released v1.37.2

@333fred
Copy link
Contributor

333fred commented Oct 13, 2020

Hmm. I can try to take a look, but there being a completion regression there surprises me. It doesn't even touch that area.

@jannickj
Copy link

I am seeing the same :(

@filipw
Copy link
Member

filipw commented Oct 13, 2020

it looks like the regression is on codecheck which then impacts the completion
I believe this issue, dotnet/vscode-csharp#4111 and #1983 all have the same root cause

@333fred
Copy link
Contributor

333fred commented Oct 13, 2020

@filipw I can do a targeted revert tonight: I'll bring the old caching behavior back, and make the fixall service not depend on the analyzer diagnostic worker for diagnostics in a different way. However, this implies that completion itself may have bugs where it's not using up-to-date semantic info. I'm not sure how that would manifest exactly, but there's likely something.

@filipw
Copy link
Member

filipw commented Oct 13, 2020

thank you! we need to invest in performance testing 😩

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants