-
Notifications
You must be signed in to change notification settings - Fork 206
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
[optimization] reuse compilation unit cache to compute symbols for document #1119
Comments
@martinlippert perhaps spring java indexer reconciling of sources opened in the editor should be skipped in favour of document reconcilers? Not sure how to proceed with the cached reconcile problems in this case though... maybe it is not a problem that some (a small subset) of reconcile problems isn't cached... |
The overall caching of symbols and reconcile results happens only for document states that are stored to disc, so we should avoid adding anything to the cache that is based on dirty state of editors. It looks to me like - at the moment - the So it looks like we have two different optimizations coming up here:
Since the execution of the |
…nstead of creating its own parser and AST
The symbols for an open document are computed via the
SpringSymbolIndex
calling thecomputeSymbols
method of the indexers in order to compute symbols from the content of the edited document instead of the content of the file on disc.The
SpringIndexerJava
implements this using the same mechanism that is used for searching for symbols in files by creating its ownASTParser
, and do the parsing - while the reconciling is doing the same on dirty documents in parallel, but using theCompilationUnitCache
instead, which gets updated automatically on demand. To avoid the duplicated parsing logic, we should switch theSpringIndexerJava
to use theCompilationUnitCache
instead of doing its own parsing.The text was updated successfully, but these errors were encountered: