You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Doug Cutting (JIRA)" <ji...@apache.org> on 2012/05/23 22:45:40 UTC

[jira] [Commented] (AVRO-1100) ResolveUnion in 1.6.3 thinks a HashMap is a Record.

    [ https://issues.apache.org/jira/browse/AVRO-1100?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13281896#comment-13281896 ] 

Doug Cutting commented on AVRO-1100:
------------------------------------

Is this the same problem as AVRO-1056?
                
> ResolveUnion in 1.6.3 thinks a HashMap is a Record.
> ---------------------------------------------------
>
>                 Key: AVRO-1100
>                 URL: https://issues.apache.org/jira/browse/AVRO-1100
>             Project: Avro
>          Issue Type: Bug
>          Components: java
>    Affects Versions: 1.6.3
>         Environment: Windows, eclipse
>            Reporter: Joe Gamache
>         Attachments: IntegerMap.java, ReflectDataTest.java
>
>
> Getting an exception thrown on line 542 of ReflectData.java.   Put a breakpoint there and found the following:
> 1. Datum is a HashMap with 119 entries.
> 2. If I select "getSchemaName(datum)" (line 539) and say inspect, it returns "java.util.HashMap"
> 3. The "indexByName" also being accessed on line 539 = {map=1, null=0}
> 4. In "getSchemaName" if I select "isMap(datum)" and say inspect, it returns "true" (this would then return "map" which DOES exist in the indexByName structure
> 5. However, still in "getSchemaName" if I select "isRecord(datum)" and say inspect, I also get back "true".  This then returns "getRecordSchema(datum).getFullName(), which is where the java.util.HashMap from item #2 comes from.   Since this is not in the "indexByName" map, I get an UnresolvedUntionException.
> Either "isRecord" needs to be fixed to not return true for Maps, or the test for "isMap" at line 556 needs to moved up ahead of the test for "isRecord".
> This works fine under 1.5.4, but breaks under 1.6.3.  I have a JUnit test that reproduces this, if I can figure out how to attach it :), I will.

--
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