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

Henrique Mendonca resolved THRIFT-1238.
---------------------------------------

    Resolution: Fixed

> Thrift JS client cannot read map of structures
> ----------------------------------------------
>
>                 Key: THRIFT-1238
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1238
>             Project: Thrift
>          Issue Type: Bug
>          Components: JavaScript - Compiler, JavaScript - Library
>    Affects Versions: 0.6.1
>            Reporter: Henrique Mendonca
>              Labels: javascript
>             Fix For: 0.8
>
>         Attachments: THRIFT-1238-fix-maps+qunit.patch, 
> THRIFT-1238-qunit-insanity.patch
>
>
> Apparently we have a problem reading map of structures, only one item is been 
> read and the other come as undefined in the result map on the client side.
> I was having this with some complex maps and notice that the test case 
> 'testInsanity' was quite similar to my case but was actually been tested at 
> all. Then checking its result I could see that's it actually a general 
> problem.
> The server sends 2 elements:
> {code}
> {
>     "1":{
>         "3":{
>             "userMap":{
>                 "8":8,
>                 "5":5
>             },
>             "xtructs":[{
>                     "string_thing":"Goodbye4",
>                     "byte_thing":4,
>                     "i32_thing":4,
>                     "i64_thing":4
>                 },
>                 {
>                     "string_thing":"Hello2",
>                     "byte_thing":2,
>                     "i32_thing":2,
>                     "i64_thing":2
>                 }
>             ]
>         },
>         "2":{
>             "userMap":{
>                 "8":8,
>                 "5":5
>             },
>             "xtructs":[{
>                     "string_thing":"Goodbye4",
>                     "byte_thing":4,
>                     "i32_thing":4,
>                     "i64_thing":4
>                 },
>                 {
>                     "string_thing":"Hello2",
>                     "byte_thing":2,
>                     "i32_thing":2,
>                     "i64_thing":2
>                 }
>             ]
>         }
>     },
>     "2":{
>         "6":{
>             "userMap":null,
>             "xtructs":null
>         }
>     }
> }
> {code}
> but we can only read 1:
> {code}
> {
>     "1":{
>         "2":{
>             "userMap":{
>                 "8":8,
>                 "5":5
>             },
>             "xtructs":[{
>                     "string_thing":"Goodbye4",
>                     "byte_thing":4,
>                     "i32_thing":4,
>                     "i64_thing":4
>                 },
>                 {
>                     "string_thing":"Hello2",
>                     "byte_thing":2,
>                     "i32_thing":2,
>                     "i64_thing":2
>                 }
>             ]
>         },
>         "undefined":{
>             "userMap":null,
>             "xtructs":null
>         }
>     },
>     "2":{
>         "6":{
>             "userMap":null,
>             "xtructs":null
>         }
>     }
> }
> {code}
> on my code it also happens with 3 or more structures, only the first one is 
> read, the second is "undefined" and the rest is gone!
> ps.: I'm submitting the patch for the unit test. I had a quick look on the 
> code but could find anything yet and won't have time in the next weeks...

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to