This is an automated email from the ASF dual-hosted git repository.

nielsbasjes pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/avro.git


The following commit(s) were added to refs/heads/main by this push:
     new aa20739d1 AVRO-3930: Mapping org.apache.hadoop.io.ZStandardCodec to 
zstandard
aa20739d1 is described below

commit aa20739d1e9efa6d65541d01ad371e7454d33018
Author: Kent Yao <[email protected]>
AuthorDate: Wed Jan 24 18:02:37 2024 +0800

    AVRO-3930: Mapping org.apache.hadoop.io.ZStandardCodec to zstandard
---
 .../main/java/org/apache/avro/hadoop/file/HadoopCodecFactory.java  | 5 +++++
 .../java/org/apache/avro/hadoop/file/TestHadoopCodecFactory.java   | 7 +++++++
 2 files changed, 12 insertions(+)

diff --git 
a/lang/java/mapred/src/main/java/org/apache/avro/hadoop/file/HadoopCodecFactory.java
 
b/lang/java/mapred/src/main/java/org/apache/avro/hadoop/file/HadoopCodecFactory.java
index 1843a2e5c..4974c4f92 100644
--- 
a/lang/java/mapred/src/main/java/org/apache/avro/hadoop/file/HadoopCodecFactory.java
+++ 
b/lang/java/mapred/src/main/java/org/apache/avro/hadoop/file/HadoopCodecFactory.java
@@ -38,6 +38,8 @@ import org.apache.avro.file.CodecFactory;
  * {@code bzip2}</li>
  * <li>{@code org.apache.hadoop.io.compress.GZipCodec} will map to
  * {@code deflate}</li>
+ * <li>{@code org.apache.hadoop.io.compress.ZStandardCodec} will map to
+ * {@code zstandard}</li>
  * </ul>
  */
 public class HadoopCodecFactory {
@@ -49,6 +51,7 @@ public class HadoopCodecFactory {
     HADOOP_AVRO_NAME_MAP.put("org.apache.hadoop.io.compress.SnappyCodec", 
"snappy");
     HADOOP_AVRO_NAME_MAP.put("org.apache.hadoop.io.compress.BZip2Codec", 
"bzip2");
     HADOOP_AVRO_NAME_MAP.put("org.apache.hadoop.io.compress.GZipCodec", 
"deflate");
+    HADOOP_AVRO_NAME_MAP.put("org.apache.hadoop.io.compress.ZStandardCodec", 
"zstandard");
   }
 
   /**
@@ -64,6 +67,8 @@ public class HadoopCodecFactory {
    * {@code bzip2}</li>
    * <li>{@code org.apache.hadoop.io.compress.GZipCodec} will map to
    * {@code deflate}</li>
+   * <li>{@code org.apache.hadoop.io.compress.ZStandardCodec} will map to
+   * {@code zstandard}</li>
    * </ul>
    */
   public static CodecFactory fromHadoopString(String hadoopCodecClass) {
diff --git 
a/lang/java/mapred/src/test/java/org/apache/avro/hadoop/file/TestHadoopCodecFactory.java
 
b/lang/java/mapred/src/test/java/org/apache/avro/hadoop/file/TestHadoopCodecFactory.java
index 7174bf135..6e47aa7bb 100644
--- 
a/lang/java/mapred/src/test/java/org/apache/avro/hadoop/file/TestHadoopCodecFactory.java
+++ 
b/lang/java/mapred/src/test/java/org/apache/avro/hadoop/file/TestHadoopCodecFactory.java
@@ -58,4 +58,11 @@ public class TestHadoopCodecFactory {
     CodecFactory hadoopSnappyCodec = 
HadoopCodecFactory.fromHadoopString("org.apache.hadoop.io.compress.FooCodec");
     assertNull(hadoopSnappyCodec);
   }
+
+  @Test
+  void hadoopCodecFactoryZstd() {
+    CodecFactory hadoopZstdCodec = 
HadoopCodecFactory.fromHadoopString("org.apache.hadoop.io.compress.ZStandardCodec");
+    CodecFactory avroZstdCodec = CodecFactory.fromString("zstandard");
+    assertEquals(hadoopZstdCodec.getClass(), avroZstdCodec.getClass());
+  }
 }

Reply via email to