From daecf055f5627775e56ffd825791463caba20229 Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Fri, 6 Sep 2024 21:03:17 +0200 Subject: [PATCH] Use reference hash set in reference Holder (#11363) --- ...-keys-and-optimize-reference-Holder-ta.patch} | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) rename patches/server/{cache-resource-keys.patch => Cache-resource-keys-and-optimize-reference-Holder-ta.patch} (80%) diff --git a/patches/server/cache-resource-keys.patch b/patches/server/Cache-resource-keys-and-optimize-reference-Holder-ta.patch similarity index 80% rename from patches/server/cache-resource-keys.patch rename to patches/server/Cache-resource-keys-and-optimize-reference-Holder-ta.patch index 52efd99091..a547802912 100644 --- a/patches/server/cache-resource-keys.patch +++ b/patches/server/Cache-resource-keys-and-optimize-reference-Holder-ta.patch @@ -1,9 +1,23 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Jake Potrebic Date: Sun, 20 Mar 2022 22:06:47 -0700 -Subject: [PATCH] cache resource keys +Subject: [PATCH] Cache resource keys and optimize reference Holder tags set +TagKeys are always interned, so we can use a reference hash set for them +diff --git a/src/main/java/net/minecraft/core/Holder.java b/src/main/java/net/minecraft/core/Holder.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +--- a/src/main/java/net/minecraft/core/Holder.java ++++ b/src/main/java/net/minecraft/core/Holder.java +@@ -0,0 +0,0 @@ public interface Holder { + } + + void bindTags(Collection> tags) { +- this.tags = Set.copyOf(tags); ++ this.tags = java.util.Collections.unmodifiableSet(new it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet<>(tags)); // Paper + } + + @Override diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBiome.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBiome.java index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBiome.java