You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Matthieu Monsch (JIRA)" <ji...@apache.org> on 2016/06/29 14:25:31 UTC

[jira] [Resolved] (AVRO-1872) Using union in nodejs, when has several different names in the union's record will report the Error at this time: ambiguous unwrapped the union, but the same protocol in Java: no problem

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

Matthieu Monsch resolved AVRO-1872.
-----------------------------------
    Resolution: Not A Problem

> Using union in nodejs, when has several different names in the union's record will report the Error at this time: ambiguous unwrapped the union, but the same protocol in Java: no problem
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AVRO-1872
>                 URL: https://issues.apache.org/jira/browse/AVRO-1872
>             Project: Avro
>          Issue Type: Bug
>          Components: java, javascript, js
>    Affects Versions: 1.8.1
>         Environment: node.js
>            Reporter: Chunfy.Tseng
>            Assignee: Matthieu Monsch
>
> protocol eg:
> {
>     "protocol": "Test",
>     "namespace": "test.avro",
>     "types": [
>         {
>             "type": "record",
>             "name": "AAA",
>             "fields": [
>                 {
>                     "name": "a",
>                     "type": "string"
>                 }
>             ]
>         },
>         {
>             "type": "record",
>             "name": "BBB",
>             "fields": [
>                 {
>                     "name": "b",
>                     "type": "string"
>                 },
>                 {
>                     "name": "a",
>                     "type": "AAA"
>                 }
>             ]
>         },
>         {
>             "type": "record",
>             "name": "CCC",
>             "fields": [
>                 {
>                     "name": "c",
>                     "type": "string"
>                 },
>                 {
>                     "name": "t",
>                     "type": "int"
>                 }
>             ]
>         },
>         {
>             "type": "record",
>             "name": "DDD",
>             "fields": [
>                 {
>                     "name": "temp",
>                     "type": "string"
>                 },
>                 {
>                     "name": "d",
>                     "type": [
>                         "null",
>                         "BBB",
>                         "CCC"
>                     ]
>                 }
>             ]
>         }
>     ],
>     "messages": {}
> }
> in java use cmd:java -jar  D:\workspace-mars2\Avro\lib\avro-tools-1.8.1.jar compile protocol D:\new\Test.avpr D:\new    is ok.
> but in node.js code:
> var avro = require("D:\\Soft\\nodejs\\node_modules\\avsc");
> var protocol = avro.parse("./Test.avpr");
> Prompt error message as below:
> D:\Soft\nodejs\node_modules\avsc\lib\types.js:918
>         throw new Error(f('ambiguous unwrapped union: %j', this));
> Error: ambiguous unwrapped union:["null",{"name":"test.avro.BBB","type":"record","fields":[{"name":"b","type":"string","order":"ascending","aliases":[]},{"name":"a","type":{"name":"test.avro.AAA","type":"record","fields":[{"name":"a","type":"string","order":"ascending","aliases":[]}],"aliases":[]},"order":"ascending","aliases":[]}],"aliases":[]},{"name":"test.avro.CCC","type":"record","fields":[{"name":"c","type":"string","order":"ascending","aliases":[]},{"name":"t","type":"int","order":"ascending","aliases":[]}],"aliases":[]}]
> it is bug?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)