Tony-X commented on code in PR #12688:
URL: https://github.com/apache/lucene/pull/12688#discussion_r1382113535


##########
lucene/sandbox/src/java/org/apache/lucene/sandbox/codecs/lucene90/randomaccess/bitpacking/BitPacker.java:
##########


Review Comment:
   > +1. I'm assuming that will be added to this PR?
   
   Yes! This PR can be large so I took the advice from @mikemccand  to open it 
early to avoid massive diff in one shot. Goal of the PR is to have a fully 
functional PostingFormat (or Codec). 
   
   > The reason I ask is because I did a similar bit packing w/ "random access" 
when serializing the [ShapeDocValues binary 
tree](https://github.com/apache/lucene/blob/d6836d3d0e5d33a98b35c0885b9787f46c4be47e/lucene/core/src/java/org/apache/lucene/document/ShapeDocValues.java#L462C26-L462C26)
 and it feels like we often re-implement this logic in different forms for 
different use cases. Can we generalize this and lean out our code base to make 
it more useable and readable?
   
   Not sure if this code does the same thing. I could be wrong, but by a quick 
glance it seems to me it encodes values with variable length (VInt, VLong). 
Maybe the random-access is achieved in different ways? 
   
   Here in this PR, the use case is -- I have a bunch of bits in the form of 
byte[] that represents a block records that have same size (measure in bits, 
but size can be > 64 so we can't use PackedInts). Since they are of the same 
size, we can randomly access any record with an index and read the bits at 
[index * size, (index+1) * size] 
   
   I do agree that we should seek opportunities to unify. But for now since 
this is under sandbox, I'll make it specific to this implementation.



-- 
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: issues-unsubscr...@lucene.apache.org

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


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to