Skip to content

Commit 6409937

Browse files
dfa1claude
andcommitted
fix(zstd): adopt renamed context/dictionary classes for zstd 0.7
zstd 0.7 renamed the FFM binding classes: ZstdCompressCtx → ZstdCompressContext, ZstdDecompressCtx → ZstdDecompressContext, ZstdDecompressDict → ZstdDecompressDictionary. Method signatures are unchanged, so the encoder/decoder just track the new names. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent d4f3dff commit 6409937

3 files changed

Lines changed: 10 additions & 10 deletions

File tree

reader/src/main/java/io/github/dfa1/vortex/reader/decode/ZstdEncodingDecoder.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
import io.github.dfa1.vortex.reader.array.MaterializedShortArray;
2020
import io.github.dfa1.vortex.reader.array.VarBinArray;
2121

22-
import io.github.dfa1.zstd.ZstdDecompressCtx;
23-
import io.github.dfa1.zstd.ZstdDecompressDict;
22+
import io.github.dfa1.zstd.ZstdDecompressContext;
23+
import io.github.dfa1.zstd.ZstdDecompressDictionary;
2424

2525
import java.io.IOException;
2626
import java.lang.foreign.Arena;
@@ -168,9 +168,9 @@ private static MemorySegment decompressFrames(
168168
boolean hasDictionary = meta.dictionary_size() != 0;
169169
int frameBufferBase = hasDictionary ? 1 : 0;
170170
MemorySegment out = ctx.arena().allocate(totalUncompressed);
171-
try (ZstdDecompressCtx dctx = new ZstdDecompressCtx();
171+
try (ZstdDecompressContext dctx = new ZstdDecompressContext();
172172
Arena scratch = Arena.ofConfined()) {
173-
ZstdDecompressDict dictionary = hasDictionary
173+
ZstdDecompressDictionary dictionary = hasDictionary
174174
? digestDictionary(asNative(ctx.buffer(0), scratch), meta.dictionary_size())
175175
: null;
176176
try {
@@ -207,13 +207,13 @@ private static MemorySegment decompressFrames(
207207
/// `declaredSize` is the metadata's `dictionary_size`; it must match the dictionary buffer's
208208
/// byte size (the Rust reference enforces the same invariant), otherwise the segment is
209209
/// malformed and we fail fast rather than digest a truncated dictionary.
210-
private static ZstdDecompressDict digestDictionary(MemorySegment dictBuffer, long declaredSize) {
210+
private static ZstdDecompressDictionary digestDictionary(MemorySegment dictBuffer, long declaredSize) {
211211
if (dictBuffer.byteSize() != declaredSize) {
212212
throw new VortexException(EncodingId.VORTEX_ZSTD,
213213
"dictionary size metadata " + declaredSize
214214
+ " does not match buffer size " + dictBuffer.byteSize());
215215
}
216-
return new ZstdDecompressDict(dictBuffer);
216+
return new ZstdDecompressDictionary(dictBuffer);
217217
}
218218

219219
/// Returns `seg` unchanged when it is already native (the production mmap path); otherwise

writer/src/main/java/io/github/dfa1/vortex/writer/encode/ZstdEncodingEncoder.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package io.github.dfa1.vortex.writer.encode;
22

3-
import io.github.dfa1.zstd.ZstdCompressCtx;
3+
import io.github.dfa1.zstd.ZstdCompressContext;
44
import io.github.dfa1.vortex.core.model.DType;
55
import io.github.dfa1.vortex.core.model.PType;
66
import io.github.dfa1.vortex.core.error.VortexException;
@@ -241,7 +241,7 @@ private static Frames compressFrames(MemorySegment raw, FrameLayout layout, Aren
241241
List<MemorySegment> compressed = new ArrayList<>(frameCount);
242242
List<ProtoZstdFrameMetadata> metas = new ArrayList<>(frameCount);
243243
long offset = 0;
244-
try (ZstdCompressCtx cctx = new ZstdCompressCtx()) {
244+
try (ZstdCompressContext cctx = new ZstdCompressContext()) {
245245
for (int f = 0; f < frameCount; f++) {
246246
long len = layout.byteLengths()[f];
247247
compressed.add(cctx.compress(arena, raw.asSlice(offset, len)));

writer/src/test/java/io/github/dfa1/vortex/writer/encode/ZstdEncodingEncoderTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.github.dfa1.vortex.writer.encode;
22

33
import io.github.dfa1.zstd.Zstd;
4-
import io.github.dfa1.zstd.ZstdCompressCtx;
4+
import io.github.dfa1.zstd.ZstdCompressContext;
55
import io.github.dfa1.zstd.ZstdDictionary;
66
import io.github.dfa1.vortex.core.model.DType;
77
import io.github.dfa1.vortex.core.model.PType;
@@ -261,7 +261,7 @@ private static byte[] compress(byte[] input) {
261261
}
262262

263263
private static byte[] compressWithDict(byte[] input, byte[] dict) {
264-
try (ZstdCompressCtx cctx = new ZstdCompressCtx()) {
264+
try (ZstdCompressContext cctx = new ZstdCompressContext()) {
265265
return cctx.compress(input, ZstdDictionary.of(dict));
266266
}
267267
}

0 commit comments

Comments
 (0)