From 63f031b01a96837922b6f2c2425834c8401e727a Mon Sep 17 00:00:00 2001 From: Jordan Date: Mon, 13 Jun 2022 08:05:18 +0100 Subject: [PATCH] Only synchronise tree generation at the very lowest level (#1788) * Only synchronise tree generation at the very lowest level - Fixes #1681 * Perform the generate inside try-finally and actually use the resultant copied map to place blocks to the editsession * Check result of generateTree and return null if failed --- .../v1_17_R1_2/PaperweightFaweAdapter.java | 44 +++++++++++------- .../fawe/v1_18_R2/PaperweightFaweAdapter.java | 44 +++++++++++------- .../fawe/v1_19_R1/PaperweightFaweAdapter.java | 44 +++++++++++------- .../src/main/resources/worldedit-adapters.jar | Bin 434242 -> 434872 bytes .../sk89q/worldedit/bukkit/BukkitWorld.java | 5 +- .../com/fastasyncworldedit/core/FaweAPI.java | 2 +- .../core/wrappers/WorldWrapper.java | 12 ++--- 7 files changed, 85 insertions(+), 66 deletions(-) diff --git a/worldedit-bukkit/adapters/adapter-1_17_1/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_17_R1_2/PaperweightFaweAdapter.java b/worldedit-bukkit/adapters/adapter-1_17_1/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_17_R1_2/PaperweightFaweAdapter.java index 084778789..d90fc50c8 100644 --- a/worldedit-bukkit/adapters/adapter-1_17_1/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_17_R1_2/PaperweightFaweAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_17_1/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_17_R1_2/PaperweightFaweAdapter.java @@ -10,6 +10,7 @@ import com.fastasyncworldedit.core.queue.IBatchProcessor; import com.fastasyncworldedit.core.queue.IChunkGet; import com.fastasyncworldedit.core.queue.implementation.packet.ChunkPacket; import com.fastasyncworldedit.core.util.NbtUtils; +import com.fastasyncworldedit.core.util.TaskManager; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -561,27 +562,34 @@ public final class PaperweightFaweAdapter extends CachedBukkitAdapter implements ); // bukkit skips the feature gen which does this offset normally, so we have to add it back } ServerLevel serverLevel = ((CraftWorld) bukkitWorld).getHandle(); - serverLevel.captureTreeGeneration = true; - serverLevel.captureBlockStates = true; - boolean grownTree = bukkitWorld.generateTree(BukkitAdapter.adapt(bukkitWorld, blockVector3), bukkitType); - serverLevel.captureBlockStates = false; - serverLevel.captureTreeGeneration = false; - if (!grownTree) { - serverLevel.capturedBlockStates.clear(); - return false; - } else { - for (CraftBlockState craftBlockState : serverLevel.capturedBlockStates.values()) { - if (craftBlockState == null || craftBlockState.getType() == Material.AIR) { - continue; + final BlockVector3 finalBlockVector = blockVector3; + // Sync to main thread to ensure no clashes occur + Map placed = TaskManager.taskManager().sync(() -> { + serverLevel.captureTreeGeneration = true; + serverLevel.captureBlockStates = true; + try { + if (!bukkitWorld.generateTree(BukkitAdapter.adapt(bukkitWorld, finalBlockVector), bukkitType)) { + return null; } - editSession.setBlock(craftBlockState.getX(), craftBlockState.getY(), craftBlockState.getZ(), - BukkitAdapter.adapt(((org.bukkit.block.BlockState) craftBlockState).getBlockData()) - ); + return ImmutableMap.copyOf(serverLevel.capturedBlockStates); + } finally { + serverLevel.captureBlockStates = false; + serverLevel.captureTreeGeneration = false; + serverLevel.capturedBlockStates.clear(); } - - serverLevel.capturedBlockStates.clear(); - return true; + }); + if (placed == null || placed.isEmpty()) { + return false; } + for (CraftBlockState craftBlockState : placed.values()) { + if (craftBlockState == null || craftBlockState.getType() == Material.AIR) { + continue; + } + editSession.setBlock(craftBlockState.getX(), craftBlockState.getY(), craftBlockState.getZ(), + BukkitAdapter.adapt(((org.bukkit.block.BlockState) craftBlockState).getBlockData()) + ); + } + return true; } @Override diff --git a/worldedit-bukkit/adapters/adapter-1_18_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_18_R2/PaperweightFaweAdapter.java b/worldedit-bukkit/adapters/adapter-1_18_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_18_R2/PaperweightFaweAdapter.java index f8b9b5752..31d087ff0 100644 --- a/worldedit-bukkit/adapters/adapter-1_18_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_18_R2/PaperweightFaweAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_18_2/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_18_R2/PaperweightFaweAdapter.java @@ -10,6 +10,7 @@ import com.fastasyncworldedit.core.queue.IBatchProcessor; import com.fastasyncworldedit.core.queue.IChunkGet; import com.fastasyncworldedit.core.queue.implementation.packet.ChunkPacket; import com.fastasyncworldedit.core.util.NbtUtils; +import com.fastasyncworldedit.core.util.TaskManager; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -553,27 +554,34 @@ public final class PaperweightFaweAdapter extends CachedBukkitAdapter implements ); // bukkit skips the feature gen which does this offset normally, so we have to add it back } ServerLevel serverLevel = ((CraftWorld) bukkitWorld).getHandle(); - serverLevel.captureTreeGeneration = true; - serverLevel.captureBlockStates = true; - boolean grownTree = bukkitWorld.generateTree(BukkitAdapter.adapt(bukkitWorld, blockVector3), bukkitType); - serverLevel.captureBlockStates = false; - serverLevel.captureTreeGeneration = false; - if (!grownTree) { - serverLevel.capturedBlockStates.clear(); - return false; - } else { - for (CraftBlockState craftBlockState : serverLevel.capturedBlockStates.values()) { - if (craftBlockState == null || craftBlockState.getType() == Material.AIR) { - continue; + final BlockVector3 finalBlockVector = blockVector3; + // Sync to main thread to ensure no clashes occur + Map placed = TaskManager.taskManager().sync(() -> { + serverLevel.captureTreeGeneration = true; + serverLevel.captureBlockStates = true; + try { + if (!bukkitWorld.generateTree(BukkitAdapter.adapt(bukkitWorld, finalBlockVector), bukkitType)) { + return null; } - editSession.setBlock(craftBlockState.getX(), craftBlockState.getY(), craftBlockState.getZ(), - BukkitAdapter.adapt(((org.bukkit.block.BlockState) craftBlockState).getBlockData()) - ); + return ImmutableMap.copyOf(serverLevel.capturedBlockStates); + } finally { + serverLevel.captureBlockStates = false; + serverLevel.captureTreeGeneration = false; + serverLevel.capturedBlockStates.clear(); } - - serverLevel.capturedBlockStates.clear(); - return true; + }); + if (placed == null || placed.isEmpty()) { + return false; } + for (CraftBlockState craftBlockState : placed.values()) { + if (craftBlockState == null || craftBlockState.getType() == Material.AIR) { + continue; + } + editSession.setBlock(craftBlockState.getX(), craftBlockState.getY(), craftBlockState.getZ(), + BukkitAdapter.adapt(((org.bukkit.block.BlockState) craftBlockState).getBlockData()) + ); + } + return true; } @Override diff --git a/worldedit-bukkit/adapters/adapter-1_19/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_19_R1/PaperweightFaweAdapter.java b/worldedit-bukkit/adapters/adapter-1_19/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_19_R1/PaperweightFaweAdapter.java index 809283df5..997e11e21 100644 --- a/worldedit-bukkit/adapters/adapter-1_19/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_19_R1/PaperweightFaweAdapter.java +++ b/worldedit-bukkit/adapters/adapter-1_19/src/main/java/com/sk89q/worldedit/bukkit/adapter/impl/fawe/v1_19_R1/PaperweightFaweAdapter.java @@ -10,6 +10,7 @@ import com.fastasyncworldedit.core.queue.IBatchProcessor; import com.fastasyncworldedit.core.queue.IChunkGet; import com.fastasyncworldedit.core.queue.implementation.packet.ChunkPacket; import com.fastasyncworldedit.core.util.NbtUtils; +import com.fastasyncworldedit.core.util.TaskManager; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -554,27 +555,34 @@ public final class PaperweightFaweAdapter extends CachedBukkitAdapter implements ); // bukkit skips the feature gen which does this offset normally, so we have to add it back } ServerLevel serverLevel = ((CraftWorld) bukkitWorld).getHandle(); - serverLevel.captureTreeGeneration = true; - serverLevel.captureBlockStates = true; - boolean grownTree = bukkitWorld.generateTree(BukkitAdapter.adapt(bukkitWorld, blockVector3), bukkitType); - serverLevel.captureBlockStates = false; - serverLevel.captureTreeGeneration = false; - if (!grownTree) { - serverLevel.capturedBlockStates.clear(); - return false; - } else { - for (CraftBlockState craftBlockState : serverLevel.capturedBlockStates.values()) { - if (craftBlockState == null || craftBlockState.getType() == Material.AIR) { - continue; + final BlockVector3 finalBlockVector = blockVector3; + // Sync to main thread to ensure no clashes occur + Map placed = TaskManager.taskManager().sync(() -> { + serverLevel.captureTreeGeneration = true; + serverLevel.captureBlockStates = true; + try { + if (!bukkitWorld.generateTree(BukkitAdapter.adapt(bukkitWorld, finalBlockVector), bukkitType)) { + return null; } - editSession.setBlock(craftBlockState.getX(), craftBlockState.getY(), craftBlockState.getZ(), - BukkitAdapter.adapt(((org.bukkit.block.BlockState) craftBlockState).getBlockData()) - ); + return ImmutableMap.copyOf(serverLevel.capturedBlockStates); + } finally { + serverLevel.captureBlockStates = false; + serverLevel.captureTreeGeneration = false; + serverLevel.capturedBlockStates.clear(); } - - serverLevel.capturedBlockStates.clear(); - return true; + }); + if (placed == null || placed.isEmpty()) { + return false; } + for (CraftBlockState craftBlockState : placed.values()) { + if (craftBlockState == null || craftBlockState.getType() == Material.AIR) { + continue; + } + editSession.setBlock(craftBlockState.getX(), craftBlockState.getY(), craftBlockState.getZ(), + BukkitAdapter.adapt(((org.bukkit.block.BlockState) craftBlockState).getBlockData()) + ); + } + return true; } @Override diff --git a/worldedit-bukkit/adapters/adapter-legacy/src/main/resources/worldedit-adapters.jar b/worldedit-bukkit/adapters/adapter-legacy/src/main/resources/worldedit-adapters.jar index 1361359715dae1898d3c670e1b9eaf93b70b9aed..e6ed1ff79a2dd1779d4055a58e5ff2d0f7f7fb69 100644 GIT binary patch delta 35989 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 cx_VYn{7E+b-GKxjl9U4?0 WorldEditPlugin.getInstance().getBukkitImplAdapter().generateTree(type, editSession, pt, - getWorld() - )); + return WorldEditPlugin.getInstance().getBukkitImplAdapter().generateTree(type, editSession, pt, getWorld()); //FAWE end } diff --git a/worldedit-core/src/main/java/com/fastasyncworldedit/core/FaweAPI.java b/worldedit-core/src/main/java/com/fastasyncworldedit/core/FaweAPI.java index fcaf33288..4c5339017 100644 --- a/worldedit-core/src/main/java/com/fastasyncworldedit/core/FaweAPI.java +++ b/worldedit-core/src/main/java/com/fastasyncworldedit/core/FaweAPI.java @@ -77,7 +77,7 @@ public class FaweAPI { *

* * @param world The name of the world - * @param autoQueue If it should start dispatching before you enqueue it. + * @param autoQueue If it should start dispatching before you close/flush it. * @return the queue extent */ public static IQueueExtent createQueue(World world, boolean autoQueue) { diff --git a/worldedit-core/src/main/java/com/fastasyncworldedit/core/wrappers/WorldWrapper.java b/worldedit-core/src/main/java/com/fastasyncworldedit/core/wrappers/WorldWrapper.java index 282f37509..2893b7290 100644 --- a/worldedit-core/src/main/java/com/fastasyncworldedit/core/wrappers/WorldWrapper.java +++ b/worldedit-core/src/main/java/com/fastasyncworldedit/core/wrappers/WorldWrapper.java @@ -273,13 +273,11 @@ public class WorldWrapper extends AbstractWorld { @Override public boolean generateTree(TreeGenerator.TreeType type, EditSession editSession, BlockVector3 position) throws MaxChangedBlocksException { - return TaskManager.taskManager().sync(() -> { - try { - return parent.generateTree(type, editSession, position); - } catch (MaxChangedBlocksException e) { - throw new RuntimeException(e); - } - }); + try { + return parent.generateTree(type, editSession, position); + } catch (MaxChangedBlocksException e) { + throw new RuntimeException(e); + } } @Override