-
Notifications
You must be signed in to change notification settings - Fork 12.6k
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
getEditsForFileRename taking long time #30535
Comments
@mjbvz I don't seem to see this either with vscode or insiders build from latest typescript build from master.
With insiders:
|
I still see this using TS 3.4.1 but I think the long running request is actually the
We make a global You should see the file rename dialog taking a long time to show up in VS Code. I don't know where this delay actually shows up on the tsserver as the logs show that the |
Looked a little bit into this. From tsserver point of view neither
Its the updateOpen request before this that needs to process opening and closing of the file that's renamed (It is done only once but it does take some time since its a big project)
|
I think we could add another array to updateOpen for rename where we can reuse the parsed source file at least if texts are same? I will experiment with that and post back if that has better results. |
Investigating this further seems like most time is gone in module resolution.. The interesting fact is that the number of files in program (2172) > the limit of files(256) for which we will iterate through each resolution and invalidate the only changed resolution..
Looking into how we can optimize resolveModules when program contains large number of files in it. |
While the root cause is discovered, it would need few prototypes to see how best we can handle.
|
TypeScript Version: 3.4.0-rc
Search Terms:
Repo
src/vs/editor/contrib/codeAction/codeAction.ts
codeActionRenamed
Bug
This triggers a
getEditsForFileRename
request that takes between 5 and 10 seconds to resolve. Here's the tsserver.log.The text was updated successfully, but these errors were encountered: