airborne12 opened a new pull request, #424:
URL: https://github.com/apache/doris-thirdparty/pull/424

   ### What problem does this PR solve?
   
   Issue Number: None
   
   Related PR: #421
   
   Problem Summary:
   
   Pick of #421 to clucene-2.1. `src/ext/for` is a vendored copy of powturbo's 
TurboPFor, which is licensed under GPL v2, linked into clucene-core and thereby 
into every Doris BE. It is replaced by `CLucene/util/PForCodec.{h,cpp}`, an 
independent implementation of the same on-disk block format (bit compatible in 
both directions), and `src/ext/for`, the `ic` library target and the `ic` link 
dependencies are removed. See #421 for the details, the measurements and the 
tests of the codec.
   
   Differences to the original change: this branch only has the CodeMode 
`kPfor`, no `PforUtil::pfor_encode/pfor_decode`, and the P4ENC / P4DEC / 
P4NZENC / P4NZDEC entry points are used directly by the readers and writers. 
Those keep their API and their choice of the format by platform, only the 
TurboPFor functions behind them are replaced; `PforUtil::decodePos` calls the 
bounded decoder. The branch had no testPFOR, so it gets one with the codec 
tests (golden vectors from the previous encoder, round trips, truncated and 
corrupt streams) and tests of the P4* entry points and of encodePos / 
decodePos. The root CMakeLists.txt keeps its own `src/ext/sse2neon` include 
directory.
   
   ### Release note
   
   Removed the GPL v2 licensed TurboPFor library from the inverted index code. 
The index format is unchanged.
   
   ### Check List (For Author)
   
   - Test: Unit Test
       - Full cl_test (62 tests, 5 of them new) built with clang + AVX2 (with 
`-include memory`, see above) and with g++-11 and the default options: all 
passed.
   - Behavior changed: No
   - Does this need documentation: No
   
   (cherry picked from commit 5725b460b6b12a6874b171832f9f834ce161b2f4)
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


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