Andrew Kyle Purtell created HBASE-26259: -------------------------------------------
Summary: Fallback support to pure Java compression via aircompressor Key: HBASE-26259 URL: https://issues.apache.org/jira/browse/HBASE-26259 Project: HBase Issue Type: Sub-task Reporter: Andrew Kyle Purtell Assignee: Andrew Kyle Purtell Fix For: 2.5.0, 3.0.0-alpha-2 Airlift’s aircompressor (https://search.maven.org/artifact/io.airlift/aircompressor) is an Apache 2 licensed library, for Java 8 and up, available in Maven central, which provides both pure Java implementations of gzip, lz4, lzo, snappy, and zstd and Hadoop compression codecs for same, claiming “they are typically 300% faster than the JNI wrappers.” (https://github.com/airlift/aircompressor). This library is under active development and up to date releases because it is used by Trino. Proposed changes: * Modify Compression.java such that compression codec implementation classes can be specified by configuration. Currently they are hardcoded as strings. * Pull in aircompressor as a ‘compile’ time dependency so it will be bundled into our build and made available on the server classpath. * Modify Compression.java to fall back to an aircompressor pure Java implementation if schema specifies a compression algorithm, a Hadoop native codec was specified as desired implementation, but the requisite native support is somehow not available. -- This message was sent by Atlassian Jira (v8.3.4#803005)