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

[spring index] optimize empty array objects in internal index storage structure #1040

Closed
martinlippert opened this issue May 10, 2023 · 2 comments
Assignees
Labels
for: eclipse something that is specific for Eclipse for: vscode something that is specific for VSCode theme: performance theme: spring index & symbols type: enhancement

Comments

@martinlippert
Copy link
Member

Instead of creating new objects for empty arrays all the time (e.g. empty arrays for injection points), we should keep one empty array for injection points around and re-use that.

@martinlippert martinlippert added type: enhancement theme: performance theme: spring index & symbols for: eclipse something that is specific for Eclipse for: vscode something that is specific for VSCode labels May 10, 2023
@martinlippert martinlippert added this to the 4.19.0.RELEASE milestone May 10, 2023
@martinlippert martinlippert self-assigned this May 10, 2023
martinlippert added a commit that referenced this issue May 12, 2023
@martinlippert
Copy link
Member Author

First step implemented for this optimization, but need to take a look at keeping this optimization when reading things from cache.

martinlippert added a commit that referenced this issue May 20, 2023
…constructor instead of gson object creation magic - to benefit from empty injection point optimization code
@martinlippert
Copy link
Member Author

Closing now as completed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
for: eclipse something that is specific for Eclipse for: vscode something that is specific for VSCode theme: performance theme: spring index & symbols type: enhancement
Projects
None yet
Development

No branches or pull requests

1 participant