avro-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Scott Carey (JIRA)" <j...@apache.org>
Subject [jira] Updated: (AVRO-667) GenericArray fails to compare with List. SpecificRecord compare gets ClassCastException
Date Thu, 16 Sep 2010 05:07:32 GMT

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

Scott Carey updated AVRO-667:
-----------------------------

    Attachment: AVRO-667.patch

Updated patch with consistend hashCode() and equals() for GenericData.

> GenericArray fails to compare with List.  SpecificRecord compare gets ClassCastException
> ----------------------------------------------------------------------------------------
>
>                 Key: AVRO-667
>                 URL: https://issues.apache.org/jira/browse/AVRO-667
>             Project: Avro
>          Issue Type: Bug
>    Affects Versions: 1.4.0
>            Reporter: Scott Carey
>            Assignee: Scott Carey
>            Priority: Blocker
>             Fix For: 1.4.1
>
>         Attachments: AVRO-667.patch, AVRO-667.patch
>
>
> AVRO-637 is incomplete.
> I am unable to convert my SpecificRecord project to 1.4.  It compiles, but unit tests
get runtime exceptions.
> compareTo in GenericData does not handle List vs GenericArray and I get class cast exceptions.
> {noformat}
> java.lang.ClassCastException: java.util.ArrayList cannot be cast to org.apache.avro.generic.GenericArray
> 	at org.apache.avro.generic.GenericData.compare(GenericData.java:502)
> 	at org.apache.avro.specific.SpecificData.compare(SpecificData.java:190)
> 	at org.apache.avro.generic.GenericData.compare(GenericData.java:494)
> 	at org.apache.avro.specific.SpecificData.compare(SpecificData.java:190)
> 	at org.apache.avro.specific.SpecificRecordBase.compareTo(SpecificRecordBase.java:45)
> 	at org.apache.avro.specific.SpecificRecordBase.equals(SpecificRecordBase.java:35)
> 	at com.rr.eventdata.ViewRecord.equals(ViewRecord.java:350)
> 	at com.rr.eventdata.WriteStuffTest.main(WriteStuffTest.java:143)
> 	at com.rr.eventdata.WriteStuffTest.testReadWriteDataFile(WriteStuffTest.java:55)
> {noformat}
> Also,  an array of string in SpecificRecord ends up as List<CharSequence>.  
> However, it should be List<? extends CharSequence> or else you can't assign a List<String>
to it.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message