[ 
https://issues.apache.org/jira/browse/LUCENE-3590?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Robert Muir updated LUCENE-3590:
--------------------------------

    Attachment: LUCENE-3590_equals_init.patch

patch fixes broken equals() methods and broken ctors in IntsRef and CharsRef.

IntsRef never set ints = EMPTY_INTS in its no-arg ctor, so ints would just be 
null.

IntsRef and CharsRef never handled the case that 'other == null' in equals().

CharsRef had other brokenness in its equals() method where it would return 
equals = true sometimes to other CharSequences that are not actually CharsRefs.

This breaks the contract of equals because its not symmetric, there is no 
guarantee of this in charsequence.
                
> minimize bytesref to be a ref to a byte[]
> -----------------------------------------
>
>                 Key: LUCENE-3590
>                 URL: https://issues.apache.org/jira/browse/LUCENE-3590
>             Project: Lucene - Java
>          Issue Type: Bug
>    Affects Versions: 4.0
>            Reporter: Robert Muir
>            Priority: Blocker
>         Attachments: LUCENE-3590_copyCtor.patch, 
> LUCENE-3590_deprecate_comparators.patch, LUCENE-3590_equals_init.patch, 
> LUCENE-3590_with_clone.patch
>
>
> Setting this as blocker for 4.0, as this class is used in every API there.
> Currently this API is a little of a everything, sometimes its like a 
> stringbuffer, it
> does numeric conversions, all kinds of stuff.
> We need this to be a ref to a byte[], nothing else. This other stuff can go 
> somewhere else.

--
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: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to