[
https://issues.apache.org/jira/browse/LUCENE-1585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12865014#action_12865014
]
Shai Erera commented on LUCENE-1585:
------------------------------------
I'm fine w/ not naming it Consumer - I agree it does not really consume it. But
if we go with PayloadMergeProcessor, we'll need PayloadMergeProcessorProvider
and they become quite long names :). I was thinking PayloadProcessor and
PayloadProcessorProvider (have cool acronyms to PP and PPP), but then people
might get confused that it processes all payloads (maybe before they are even
written the first time), while it is actually invoked only during segment
merges.I was following the *Consumer pattern I saw all over the place w/
SegmentMerger, and thought that if someone ever reads SM code, it will swallow
easily another *Consumer one ...
So between PC, PMP and PP - I prefer PP - the documentation should clarify what
it does.
But I'm open for suggestions.
> 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: Shai Erera
> Priority: Minor
> Fix For: 3.1, 4.0
>
> Attachments: LUCENE-1585_3x.patch, LUCENE-1585_3x.patch,
> LUCENE-1585_trunk.patch
>
>
> 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: [email protected]
For additional commands, e-mail: [email protected]