Uploaded image for project: 'Java Driver'
  1. Java Driver
  2. JAVA-5372

Use pure Java compressor library

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Unknown Unknown
    • None
    • Affects Version/s: None
    • Component/s: Wire Protocol
    • Java Drivers

      Depend on the pure Java implementation of Zstd and Snappy compression from https://github.com/airlift/aircompressor.

      Pros:

      1. Single library instead of two
      2. No native code, aligning with the Integrity by Default direction of the JDK defined in https://openjdk.org/jeps/8305968.
      3. Easier to integrate into GraalVM
      4. Possibly faster. Their claim is a 10-40% speedup
      5. Library is used in https://trino.io/
      6. Actively maintained

      Cons:

      1. Implementation is not as widely used as the native libraries we currently depend on, and the library hasn't released a 1.0 version.
      2. Relies on sun.misc.Unsafe for speed

            Assignee:
            Unassigned Unassigned
            Reporter:
            jeff.yemin@mongodb.com Jeffrey Yemin
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: