diff --git a/Spigot-Server-Patches/Don-t-recheck-type-after-setting-a-block.patch b/Spigot-Server-Patches/Don-t-recheck-type-after-setting-a-block.patch new file mode 100644 index 000000000..93b5c250b --- /dev/null +++ b/Spigot-Server-Patches/Don-t-recheck-type-after-setting-a-block.patch @@ -0,0 +1,31 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Aikar +Date: Fri, 28 Sep 2018 22:27:33 -0400 +Subject: [PATCH] Don't recheck type after setting a block + +The server does a "Did my update succeed" check after setting +a blocks data to a chunk. + +However, writes can not fail outside of a hard error or a +a race condition from multiple threads writing, which is +not something that should ever occur on the server. + +So this check is pointless, as if it did occur, the server would +be having data corruption issues anyways. + +This provides a small boost to all setType calls. + +diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java +index e4bda70bb9..895eb60854 100644 +--- a/src/main/java/net/minecraft/server/Chunk.java ++++ b/src/main/java/net/minecraft/server/Chunk.java +@@ -0,0 +0,0 @@ public class Chunk implements IChunkAccess { + this.world.n(blockposition); + } + +- if (chunksection.getType(i, j & 15, k).getBlock() != block) { ++ if (false && chunksection.getType(i, j & 15, k).getBlock() != block) { // Paper - don't need to recheck this - this would only fail due to non main thread writes which are not supported + return null; + } else { + if (flag1) { +-- \ No newline at end of file