jimczi opened a new pull request #1394: LUCENE-9300: Fix field infos update on 
doc values update
URL: https://github.com/apache/lucene-solr/pull/1394
 
 
   Today a doc values update creates a new field infos file that contains the 
original field infos updated for the new generation as well as the new fields 
created by the doc values update.
   
   However existing fields are cloned through the global fields (shared in the 
index writer) instead of the local ones (present in the segment).
   In practice this is not an issue since field numbers are shared between 
segments created by the same index writer.
   But this assumption doesn't hold for segments created by different writers 
and added through IndexWriter#addIndexes(Directory).
   In this case, the field number of the same field can differ between segments 
so any doc values update can corrupt the index
   by assigning the wrong field number to an existing field in the next 
generation.
   
   When this happens, queries and merges can access wrong fields without 
throwing any error, leading to a silent corruption in the index.
   
   This change ensures that we preserve local field numbers when creating
   a new field infos generation.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

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

Reply via email to