clintropolis opened a new pull request, #17422:
URL: https://github.com/apache/druid/pull/17422

   ### Description
   Less ambitious fix than #17391, which adds the concept of value byte 
ordering to `ObjectStrategy`, this PR instead just hard-codes 
`CompressedComplexColumn` to use big endian value buffers in order to fix an 
issue related to value endianness with some `ObjectStrategy` implementations 
when used with the compression added in #16863.
   
   I would still like to do the changes in the other PR at some point because 
it is a path to allowing all the stuff in segments to use native endian, but 
there are a lot of additional changes which need to be done first, such as 
squaring up the things that use `ByteBufferWriter`/ 
`ObjectStrategy.fromByteBufferWithSize` to determine if the header (size) int 
value endian should match the endian of the object strategy or not, and 
determining a more elegant way to handle this stuff.
   
   #### Release note
   Fixes an issue related to value buffers being ordered with the incorrect 
endianness which can cause some complex types, such as `approxHistogram` to 
incorrectly be read, and can lead to out of memory exceptions in some cases.
   
   <hr>
   
   This PR has:
   
   - [x] been self-reviewed.
   - [x] a release note entry in the PR description.
   - [x] added comments explaining the "why" and the intent of the code 
wherever would not be obvious for an unfamiliar reader.
   - [x] added unit tests or modified existing tests to cover new code paths, 
ensuring the threshold for [code 
coverage](https://github.com/apache/druid/blob/master/dev/code-review/code-coverage.md)
 is met.
   - [x] been tested in a test Druid cluster.
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to