diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/EDhApiDetailLevel.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/EDhApiDetailLevel.java index f114ff803..b23021d4e 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/EDhApiDetailLevel.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/EDhApiDetailLevel.java @@ -39,10 +39,6 @@ package com.seibel.distanthorizons.api.enums; */ public enum EDhApiDetailLevel { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - /** * detail level: 0
* width in Blocks: 1 diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiBlocksToAvoid.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiBlocksToAvoid.java index 5a49cc857..1ae46ee3c 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiBlocksToAvoid.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiBlocksToAvoid.java @@ -28,10 +28,6 @@ package com.seibel.distanthorizons.api.enums.config; */ public enum EDhApiBlocksToAvoid { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - NONE(false), NON_COLLIDING(true); diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiDataCompressionMode.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiDataCompressionMode.java index 6a2e120d2..f9c007792 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiDataCompressionMode.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiDataCompressionMode.java @@ -23,6 +23,7 @@ package com.seibel.distanthorizons.api.enums.config; * UNCOMPRESSED
* LZ4
* Z_STD
+ * Z_STD_STREAM
* LZMA2

* * Note: speed and compression ratios are examples @@ -33,10 +34,6 @@ package com.seibel.distanthorizons.api.enums.config; */ public enum EDhApiDataCompressionMode { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - /** * Should only be used internally and for unit testing.

* @@ -57,28 +54,32 @@ public enum EDhApiDataCompressionMode LZ4(1), /** - * Decent speed and good compression.

+ * Great speed and good compression.

* + * Read Speed: 2.1 MS / DTO
+ * Write Speed: 4.9 MS / DTO
+ * Compression ratio: 0.2606
+ */ + Z_STD_BLOCK(4), + + /** + * Similar to {@link EDhApiDataCompressionMode#Z_STD_BLOCK} + * except slower.

+ * + * This option is only provided for legacy support when processing old databases.

+ * * Read Speed: 9.31 MS / DTO
* Write Speed: 15.13 MS / DTO
* Compression ratio: 0.2606
*/ - Z_STD(4), - - /** - * Similar to {@link EDhApiDataCompressionMode#Z_STD} - * except slower. - *
- * This option is only provided for legacy support when processing old databases. - */ @Deprecated @DisallowSelectingViaConfigGui Z_STD_STREAM(2), - /** - * Extremely slow, but very good compression.

- * + * Extremely slow, but very good compression.
+ * Often causes whole computer stuttering due to memory bandwidth saturation.

+ * * Read Speed: 13.29 MS / DTO
* Write Speed: 70.95 MS / DTO
* Compression ratio: 0.2068
diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiGpuUploadMethod.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiGpuUploadMethod.java index ccd511013..b3e612929 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiGpuUploadMethod.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiGpuUploadMethod.java @@ -44,9 +44,9 @@ public enum EDhApiGpuUploadMethod /** Fast rendering but may stutter when uploading. */ SUB_DATA(false, false), - /** Don't upload, only should be used for debugging */ - @Deprecated // TODO remove before release - NONE(false, false), + ///** Don't upload, only should be used for debugging */ + //@Deprecated + //NONE(false, false), /** * May end up storing buffers in System memory.
diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiGrassSideRendering.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiGrassSideRendering.java index 8afbdadfb..6e96f14c3 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiGrassSideRendering.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiGrassSideRendering.java @@ -29,10 +29,6 @@ package com.seibel.distanthorizons.api.enums.config; */ public enum EDhApiGrassSideRendering { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - AS_GRASS, FADE_TO_DIRT, AS_DIRT; diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiHorizontalQuality.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiHorizontalQuality.java index 785c904fc..5daf4cc7e 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiHorizontalQuality.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiHorizontalQuality.java @@ -31,11 +31,6 @@ package com.seibel.distanthorizons.api.enums.config; */ public enum EDhApiHorizontalQuality { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - - // Note: any quadraticBase less than 2.0f has issues with DetailDistanceUtil, and will always return the lowest detail level. // So for now we are limiting the lowest value to 2.0 // LOWEST was originally 1.0f and LOW was 1.5f diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiLodShading.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiLodShading.java index 81590f1be..a420b4e31 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiLodShading.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiLodShading.java @@ -29,10 +29,6 @@ package com.seibel.distanthorizons.api.enums.config; */ public enum EDhApiLodShading { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - /** * Uses Minecraft's shading for LODs.
* This means if Minecraft's shading is disabled DH's shading will be as well. diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiMcRenderingFadeMode.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiMcRenderingFadeMode.java index 2650aa49a..12ff3d0c9 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiMcRenderingFadeMode.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiMcRenderingFadeMode.java @@ -33,10 +33,6 @@ package com.seibel.distanthorizons.api.enums.config; */ public enum EDhApiMcRenderingFadeMode { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - /** * No fading is done, there will be a pronounced border between * Minecraft and Distant Horizons.
diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiServerFolderNameMode.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiServerFolderNameMode.java index dc684ec99..338e41cee 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiServerFolderNameMode.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiServerFolderNameMode.java @@ -35,11 +35,6 @@ package com.seibel.distanthorizons.api.enums.config; */ public enum EDhApiServerFolderNameMode { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - - /** Only use the server name */ NAME_ONLY, diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiVanillaOverdraw.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiVanillaOverdraw.java index 0c705701d..13dc008e4 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiVanillaOverdraw.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiVanillaOverdraw.java @@ -34,11 +34,6 @@ package com.seibel.distanthorizons.api.enums.config; @Deprecated // not currently in use, if the config this enum represents is re-implemented, the deprecated flag can be removed public enum EDhApiVanillaOverdraw { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - - /** * Don't draw LODs where a minecraft chunk could be. * Use Overdraw Offset to tweak the border thickness. diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiWorldCompressionMode.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiWorldCompressionMode.java index 4311de5a6..8c73fadbc 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiWorldCompressionMode.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/EDhApiWorldCompressionMode.java @@ -28,10 +28,6 @@ package com.seibel.distanthorizons.api.enums.config; */ public enum EDhApiWorldCompressionMode { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - /** * Every block/biome change is recorded in the database.
* This is what DH 2.0 and 2.0.1 all used by default and will store a lot of data. diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/quickOptions/EDhApiQualityPreset.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/quickOptions/EDhApiQualityPreset.java index 925e6d841..78a21e503 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/quickOptions/EDhApiQualityPreset.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/quickOptions/EDhApiQualityPreset.java @@ -35,10 +35,6 @@ import com.seibel.distanthorizons.api.enums.config.DisallowSelectingViaConfigGui */ public enum EDhApiQualityPreset { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - @DisallowSelectingViaConfigGui CUSTOM, diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/quickOptions/EDhApiThreadPreset.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/quickOptions/EDhApiThreadPreset.java index 5054d17aa..a32457397 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/config/quickOptions/EDhApiThreadPreset.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/config/quickOptions/EDhApiThreadPreset.java @@ -34,10 +34,6 @@ import com.seibel.distanthorizons.api.enums.config.DisallowSelectingViaConfigGui */ public enum EDhApiThreadPreset { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - @DisallowSelectingViaConfigGui CUSTOM, diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiDebugRendering.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiDebugRendering.java index 1983dec33..1500aa13f 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiDebugRendering.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiDebugRendering.java @@ -33,11 +33,6 @@ package com.seibel.distanthorizons.api.enums.rendering; */ public enum EDhApiDebugRendering { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - - /** LODs are rendered normally */ OFF, diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiFogDrawMode.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiFogDrawMode.java index a8061e385..c0a27ee53 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiFogDrawMode.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiFogDrawMode.java @@ -33,10 +33,6 @@ package com.seibel.distanthorizons.api.enums.rendering; @Deprecated public enum EDhApiFogDrawMode { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - /** * Use whatever Fog setting Optifine is using. * If Optifine isn't installed this defaults to {@link EDhApiFogDrawMode#FOG_ENABLED}. diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiFogFalloff.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiFogFalloff.java index de08a8f92..773fcc542 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiFogFalloff.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiFogFalloff.java @@ -30,11 +30,6 @@ package com.seibel.distanthorizons.api.enums.rendering; */ public enum EDhApiFogFalloff { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - - LINEAR(0), EXPONENTIAL(1), EXPONENTIAL_SQUARED(2); diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiHeightFogDirection.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiHeightFogDirection.java index 92596ccf7..6936e2d30 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiHeightFogDirection.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiHeightFogDirection.java @@ -33,11 +33,6 @@ package com.seibel.distanthorizons.api.enums.rendering; */ public enum EDhApiHeightFogDirection { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - - ABOVE_CAMERA (true, true, false), BELOW_CAMERA (true, false, true), ABOVE_AND_BELOW_CAMERA (true, true, true), diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiRendererMode.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiRendererMode.java index 9281f57ac..aad4a8673 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiRendererMode.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiRendererMode.java @@ -29,11 +29,6 @@ package com.seibel.distanthorizons.api.enums.rendering; */ public enum EDhApiRendererMode { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - - DEFAULT, DEBUG, DISABLED; diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiTransparency.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiTransparency.java index 2ba4e715f..5f6a25539 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiTransparency.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/rendering/EDhApiTransparency.java @@ -29,11 +29,6 @@ package com.seibel.distanthorizons.api.enums.rendering; */ public enum EDhApiTransparency { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - - DISABLED(false, false), FAKE(true, true), COMPLETE(true, false); diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/worldGeneration/EDhApiDistantGeneratorMode.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/worldGeneration/EDhApiDistantGeneratorMode.java index dfdc276c1..a2161692f 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/worldGeneration/EDhApiDistantGeneratorMode.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/worldGeneration/EDhApiDistantGeneratorMode.java @@ -34,11 +34,6 @@ package com.seibel.distanthorizons.api.enums.worldGeneration; */ public enum EDhApiDistantGeneratorMode { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - - /** Don't generate any new terrain, just generate LODs for already generated chunks. */ PRE_EXISTING_ONLY((byte) 1), diff --git a/api/src/main/java/com/seibel/distanthorizons/api/enums/worldGeneration/EDhApiDistantGeneratorProgressDisplayLocation.java b/api/src/main/java/com/seibel/distanthorizons/api/enums/worldGeneration/EDhApiDistantGeneratorProgressDisplayLocation.java index b07f18873..bcd14f750 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/enums/worldGeneration/EDhApiDistantGeneratorProgressDisplayLocation.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/enums/worldGeneration/EDhApiDistantGeneratorProgressDisplayLocation.java @@ -31,11 +31,6 @@ package com.seibel.distanthorizons.api.enums.worldGeneration; */ public enum EDhApiDistantGeneratorProgressDisplayLocation { - // Reminder: - // when adding items up the API minor version - // when removing items up the API major version - - OVERLAY, CHAT, LOG, diff --git a/api/src/main/java/com/seibel/distanthorizons/api/interfaces/data/IDhApiTerrainDataRepo.java b/api/src/main/java/com/seibel/distanthorizons/api/interfaces/data/IDhApiTerrainDataRepo.java index 7c1e332ed..10e9cb361 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/interfaces/data/IDhApiTerrainDataRepo.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/interfaces/data/IDhApiTerrainDataRepo.java @@ -161,6 +161,11 @@ public interface IDhApiTerrainDataRepo //=========// /** + * Creates a new cache you manage that can be used to speed up repeat + * read operations.
+ * Without a cache each operation must: hit the backing database file, + * decompress it, and parse it; which is a fairly slow process.
+ * * @return a {@link IDhApiTerrainDataCache} backed by {@link java.lang.ref.SoftReference}'s. * @since API 5.0.0 */ diff --git a/api/src/main/java/com/seibel/distanthorizons/api/objects/data/DhApiChunk.java b/api/src/main/java/com/seibel/distanthorizons/api/objects/data/DhApiChunk.java index 080cb6691..545b5ec82 100644 --- a/api/src/main/java/com/seibel/distanthorizons/api/objects/data/DhApiChunk.java +++ b/api/src/main/java/com/seibel/distanthorizons/api/objects/data/DhApiChunk.java @@ -31,7 +31,7 @@ import java.util.List; * Contains a list of {@link DhApiTerrainDataPoint} representing the blocks in a Minecraft chunk. * * @author Builderb0y, James Seibel - * @version 2024-7-21 + * @version 2025-12-11 * @since API 2.0.0 * * @see IDhApiWrapperFactory diff --git a/core/src/main/java/com/seibel/distanthorizons/core/config/Config.java b/core/src/main/java/com/seibel/distanthorizons/core/config/Config.java index e9a927121..26178eeaa 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/config/Config.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/config/Config.java @@ -1431,7 +1431,7 @@ public class Config .build(); public static ConfigEntry dataCompression = new ConfigEntry.Builder() - .set(EDhApiDataCompressionMode.Z_STD) + .set(EDhApiDataCompressionMode.Z_STD_BLOCK) // only visible via the API since there is no reason to use any compressor except ZStandard as of 2025-11-24 .setAppearance(EConfigEntryAppearance.ONLY_IN_API) .build(); diff --git a/core/src/main/java/com/seibel/distanthorizons/core/render/glObject/buffer/GLBuffer.java b/core/src/main/java/com/seibel/distanthorizons/core/render/glObject/buffer/GLBuffer.java index 1ecd52bef..8598e284e 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/render/glObject/buffer/GLBuffer.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/render/glObject/buffer/GLBuffer.java @@ -198,8 +198,8 @@ public class GLBuffer implements AutoCloseable switch (uploadMethod) { - case NONE: - return; + //case NONE: + // return; case AUTO: LodUtil.assertNotReach("GpuUploadMethod AUTO must be resolved before call to uploadBuffer()!"); case BUFFER_STORAGE: diff --git a/core/src/main/java/com/seibel/distanthorizons/core/util/objects/dataStreams/DhDataInputStream.java b/core/src/main/java/com/seibel/distanthorizons/core/util/objects/dataStreams/DhDataInputStream.java index 81f1bb634..9fa19ca4a 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/util/objects/dataStreams/DhDataInputStream.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/util/objects/dataStreams/DhDataInputStream.java @@ -26,7 +26,6 @@ import com.seibel.distanthorizons.api.enums.config.EDhApiDataCompressionMode; import com.seibel.distanthorizons.core.logging.DhLoggerBuilder; import it.unimi.dsi.fastutil.bytes.ByteArrayList; import net.jpountz.lz4.LZ4FrameInputStream; -import org.apache.logging.log4j.LogManager; import com.seibel.distanthorizons.core.logging.DhLogger; import org.tukaani.xz.ResettableArrayCache; import org.tukaani.xz.XZInputStream; @@ -61,7 +60,7 @@ public class DhDataInputStream extends DataInputStream { // Z_Std handling compression outside the stream provides a significant performance boost ByteArrayInputStream byteArrayInputStream; - if (compressionMode == EDhApiDataCompressionMode.Z_STD) + if (compressionMode == EDhApiDataCompressionMode.Z_STD_BLOCK) { byteArrayInputStream = new ByteArrayInputStream(Zstd.decompress(byteArray)); } @@ -87,7 +86,7 @@ public class DhDataInputStream extends DataInputStream return stream; case LZ4: return new LZ4FrameInputStream(stream); - case Z_STD: + case Z_STD_BLOCK: // ZStd compression should be handled before this point // just return the stream return stream; diff --git a/core/src/main/java/com/seibel/distanthorizons/core/util/objects/dataStreams/DhDataOutputStream.java b/core/src/main/java/com/seibel/distanthorizons/core/util/objects/dataStreams/DhDataOutputStream.java index beaad49e4..fd04f635c 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/util/objects/dataStreams/DhDataOutputStream.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/util/objects/dataStreams/DhDataOutputStream.java @@ -20,14 +20,12 @@ package com.seibel.distanthorizons.core.util.objects.dataStreams; import com.github.luben.zstd.Zstd; -import com.github.luben.zstd.ZstdOutputStream; import com.seibel.distanthorizons.api.enums.config.EDhApiDataCompressionMode; import com.seibel.distanthorizons.core.logging.DhLoggerBuilder; import it.unimi.dsi.fastutil.bytes.ByteArrayList; import net.jpountz.lz4.LZ4Factory; import net.jpountz.lz4.LZ4FrameOutputStream; import net.jpountz.xxhash.XXHashFactory; -import org.apache.logging.log4j.LogManager; import com.seibel.distanthorizons.core.logging.DhLogger; import org.tukaani.xz.*; @@ -85,7 +83,7 @@ public class DhDataOutputStream extends DataOutputStream //LZ4Factory.nativeInstance().fastCompressor(), //XXHashFactory.nativeInstance().hash32(), LZ4FrameOutputStream.FLG.Bits.BLOCK_INDEPENDENCE); - case Z_STD: + case Z_STD_BLOCK: // ZStd compression should be handled after the stream is closed // just return the stream return stream; @@ -127,7 +125,7 @@ public class DhDataOutputStream extends DataOutputStream this.outputByteArray.clear(); - if (this.compressionMode == EDhApiDataCompressionMode.Z_STD) + if (this.compressionMode == EDhApiDataCompressionMode.Z_STD_BLOCK) { this.outputByteArray.addElements(0, Zstd.compress(this.wrappedByteStream.toByteArray(), 3)); } diff --git a/core/src/test/java/tests/CompressionTest.java b/core/src/test/java/tests/CompressionTest.java index ddd2beee0..58dc0ae6f 100644 --- a/core/src/test/java/tests/CompressionTest.java +++ b/core/src/test/java/tests/CompressionTest.java @@ -27,7 +27,6 @@ import com.seibel.distanthorizons.coreapi.util.StringUtil; import it.unimi.dsi.fastutil.longs.LongArrayList; //import org.apache.commons.compress.compressors.zstandard.ZstdCompressorOutputStream; import org.junit.Assert; -import org.junit.Test; import java.io.*; @@ -204,7 +203,7 @@ public class CompressionTest public void Zstd() // middle of the road { String compressorName = "Zstd"; - this.testCompressor(compressorName, EDhApiDataCompressionMode.Z_STD); + this.testCompressor(compressorName, EDhApiDataCompressionMode.Z_STD_BLOCK); } //@Test diff --git a/core/src/test/java/tests/DataSourceRepoTests.java b/core/src/test/java/tests/DataSourceRepoTests.java index 2ec1e5d04..4f828137a 100644 --- a/core/src/test/java/tests/DataSourceRepoTests.java +++ b/core/src/test/java/tests/DataSourceRepoTests.java @@ -321,7 +321,7 @@ public class DataSourceRepoTests Assert.assertFalse(pooledDto.compressedWorldCompressionModeByteArray.isEmpty()); try (FullDataSourceV2 dataSource = pooledDto.createUnitTestDataSource(); - FullDataSourceV2DTO compressedDto = FullDataSourceV2DTO.CreateFromDataSource(dataSource, EDhApiDataCompressionMode.Z_STD)) + FullDataSourceV2DTO compressedDto = FullDataSourceV2DTO.CreateFromDataSource(dataSource, EDhApiDataCompressionMode.Z_STD_BLOCK)) { repo.save(compressedDto);