You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by GitBox <gi...@apache.org> on 2022/10/13 19:35:28 UTC

[GitHub] [arrow] sfc-gh-nthimmegowda commented on pull request #14407: ARROW-18031: [C++][Parquet] Undefined behavior in bool RLE decoder

sfc-gh-nthimmegowda commented on PR #14407:
URL: https://github.com/apache/arrow/pull/14407#issuecomment-1278094061

   Thank you @zeroshade for the fix. I agree with your explanation. 
   
   @pitrou 
   For reference this is how[ java implementation decodes](https://github.com/apache/parquet-mr/blob/5608695f5777de1eb0899d9075ec9411cfdf31d3/parquet-column/src/main/java/org/apache/parquet/column/values/rle/RunLengthBitPackingHybridDecoder.java#L87). 
   
   At the end the type does not matter because everything is casted to int 64 in [Link](https://github.com/apache/arrow/blob/38b956f4da174c1e72607159c9a98f9dbacf6f75/cpp/src/arrow/util/rle_encoding.h#L667) . This is an unfortunate side effect of reusing functions, but I do not see a better way
   
   I disagree with how we are relying on type to calculate the byte size, but unfortunatel I do not see a better way for this. 
   


-- 
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: github-unsubscribe@arrow.apache.org

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