mqy edited a comment on pull request #9137:
URL: https://github.com/apache/arrow/pull/9137#issuecomment-757449958


   @nevi-me no luck to install pyarrow 2.0.0 due to various dependency errors, 
but found something:
   `Message.rs` requires `LZ4 frame format`, not the block format.
   
   ```
     // LZ4 frame format, for portability, as provided by lz4frame.h or wrappers
     // thereof. Not to be confused with "raw" (also called "block") format
     // provided by lz4.h
   ```
   
   FYI:
   
   - [lz4frame.h] mentioned in `Message.rs`: 
https://github.com/lz4/lz4/blob/fdf2ef5809ca875c454510610764d9125ef2ebbd/lib/lz4frame.h
   - [lz4 frame example c code] 
https://github.com/lz4/lz4/blob/fdf2ef5809ca875c454510610764d9125ef2ebbd/examples/frameCompress.c
   - [lz4-rs lz4-sys APIs] 
https://github.com/10XGenomics/lz4-rs/blob/master/lz4-sys/src/lib.rs
   - [c++ uses LZ4F_xxx APIs] 
https://github.com/apache/arrow/blob/3694794bdfd0677b95b8c95681e392512f1c9237/cpp/src/arrow/util/compression_lz4.cc
   
   --update--
   
   It's a bit complicate to implement with c bindings as what `frameCompress.c` 
does. Also found another crate for lz4 frame:
   https://docs.rs/lzzzz/0.8.0/lzzzz/lz4f/index.html, where both 
`compress_to_vec` and `decompress_to_vec` looks good, you can evaluate from the 
corresponding examples.


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to