You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Robert Muir (Created) (JIRA)" <ji...@apache.org> on 2012/02/14 19:25:59 UTC

[jira] [Created] (LUCENE-3787) Improve Norms merging APIs

Improve Norms merging APIs
--------------------------

                 Key: LUCENE-3787
                 URL: https://issues.apache.org/jira/browse/LUCENE-3787
             Project: Lucene - Java
          Issue Type: Bug
    Affects Versions: 4.0
            Reporter: Robert Muir


Spinoff from LUCENE-2632, since it took us a fair amount of time to track down,
I think its worth trying to improve the API.

The DocValuesConsumer api's default merge implementation calls canMerge/getDocValuesForMerge/getDocValuesType (protected methods).

but its a little strange how this works:
* all norms implementations must override the default DV implementation, or they might accidentally merge docvalues into their norms!
* preflex-RW only overrides 2 of these... how is its norms merging working... is it?
* its tricky obviously for issues like LUCENE-2632: as delegating merge() is not very obvious either.

So I think we should look at this, instead of having all NormsWriters override DocValues, redefining these methods in a way thats 
not a "is-a" relationship, we could do something else like have split NormsConsumer/DVConsumer apis that share a package-private base class.

This way a norms impl just extends NormsConsumer and there are no traps. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org