[ https://issues.apache.org/jira/browse/LUCENE-1585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12695728#action_12695728 ]
Michael McCandless commented on LUCENE-1585: -------------------------------------------- I agree: extensibility to the SegmentInfo (just like FieldInfo) is needed. I think, ideally, with LUCENE-1458 there would be a "payloads codec" responsible for reading & writing & merging. All things (not just payloads) need this. EG, because the payload is opaque to Lucene, we now must encode the length of the byte[] per term occurrence, but if [say] the codec knows it's always N bytes, or it's a function of term, or something, the codec would be free not to encode the number of bytes and derive it from other sources. > Allow to control how payloads are merged > ---------------------------------------- > > Key: LUCENE-1585 > URL: https://issues.apache.org/jira/browse/LUCENE-1585 > Project: Lucene - Java > Issue Type: New Feature > Components: Index > Reporter: Michael Busch > Assignee: Michael Busch > Priority: Minor > > Lucene handles backwards-compatibility of its data structures by > converting them from the old into the new formats during segment > merging. > Payloads are simply byte arrays in which users can store arbitrary > data. Applications that use payloads might want to convert the format > of their payloads in a similar fashion. Otherwise it's not easily > possible to ever change the encoding of a payload without reindexing. > So I propose to introduce a PayloadMerger class that the SegmentMerger > invokes to merge the payloads from multiple segments. Users can then > implement their own PayloadMerger to convert payloads from an old into > a new format. > In the future we need this kind of flexibility also for column-stride > fields (LUCENE-1231) and flexible indexing codecs. > In addition to that it would be nice if users could store version > information in the segments file. E.g. they could store "in segment _2 > the term a:b uses payloads of format x.y". -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org For additional commands, e-mail: java-dev-h...@lucene.apache.org