aylonsk commented on PR #14932:
URL: https://github.com/apache/lucene/pull/14932#issuecomment-3133174086

   Hello, and thank you for all of your suggestions. I have updated the reader 
and format files accordingly to allow for backwards compatibility using a 
VERSION_GROUPVARINT parameter in the format class, and an interface near the 
top level of the reader class to make impact on runtime minimal. 
   
   The testing part was trickier, as I needed to create a new class 
(TestLucene99HnswVectorsFormatV2) that would extend the same class 
(BaseKnnVectorsFormatTestCase) as the original TestLucene99HnswVectorsFormat, 
but with a getCodec() method that would return the a format with the old writer 
and the new reader. At first I thought I would have to create my own test to 
read, write, and check docIDs in HNSW graphs, but then I realized that there 
are already tests in the BaseKnnVectorsFormatTestCase class that do this (such 
as testRecall). 
   
   To make this possible, I created two new classes in the lucene99 
backwards_codecs directory: A VarInt-only writer (Lucene99HnswVectorsWriterV0) 
and a format that returns the current backwards-compatible reader in its 
fieldsReader class and the VarInt-only writer in its fieldsWriter class. To 
confirm the validity of the test, a VarInt-only reader was also created but not 
commited (Lucene99HnswVectorsReaderV0), and when I flipped the format class to 
using the new writer and the old reader, the testRecall test failed. 
   
   Any questions/comments/suggestions are appreciated. Thank you!


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