lh0156 opened a new pull request, #22940: URL: https://github.com/apache/kafka/pull/22940
## Summary - Add GraalVM JNI reachability metadata for `ZstdOutputStreamNoFinalizer`. - Extend the Docker sanity test to create a zstd-compressed topic, produce a zstd record, and consume it back. ## Motivation Native Kafka images already register the private `srcPos` and `dstPos` fields used by `ZstdInputStreamNoFinalizer`, but the corresponding output stream fields were missing. When a native broker handled a topic configured with `compression.type=zstd`, zstd-jni attempted to access those fields through JNI and failed with `NoSuchFieldError`. The regression flow exercises the broker-side output path instead of only checking the metadata file, so the test verifies that a native broker can create, write to, and read from a zstd-compressed topic. Fixes [KAFKA-19839](https://issues.apache.org/jira/browse/KAFKA-19839) ## Validation - `./gradlew core:releaseTarGz --no-daemon --console=plain` - Built the native Docker image from the local release archive with the GraalVM 21 Dockerfile. - Ran the native Docker sanity zstd flow: topic creation, zstd producer write, and consumer read all passed. - Verified the updated JNI metadata with `jq`, inspected the `zstd-jni 1.5.6-10` fields with `javap`, ran Python AST parsing, and ran `git diff --check`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
