fix performance issue when removing projects with lots of symbols from workspace

This commit is contained in:
Martin Lippert
2025-04-05 19:32:50 +02:00
parent 096255882e
commit 4e0ec923dd

View File

@@ -1121,9 +1121,9 @@ public class SpringSymbolIndex implements InitializingBean, SpringIndex {
List<WorkspaceSymbol> oldSymbols = symbolsByProject.remove(project.getElementName());
if (oldSymbols != null) {
List<WorkspaceSymbol> copy = null;
Set<WorkspaceSymbol> copy = null;
synchronized(oldSymbols) {
copy = new ArrayList<>(oldSymbols);
copy = new HashSet<>(oldSymbols); // use HashSet here in order to speed up removal of symbols from global list
}
synchronized(this.symbols) {