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

Chip Salzenberg commented on HBASE-8078:
----------------------------------------

Further explanation: 
http://jersey.576304.n2.nabble.com/Jersey-JAXB-incorrectly-consumes-JSON-if-elements-are-not-particularly-ordered-td4784190.html
                
> REST for Multi-put Using JSON Ordering
> --------------------------------------
>
>                 Key: HBASE-8078
>                 URL: https://issues.apache.org/jira/browse/HBASE-8078
>             Project: HBase
>          Issue Type: Bug
>          Components: REST
>            Reporter: Jesse Anderson
>
> This issue only happens when doing a Multi-put using the REST interface and 
> with the JSON data format.
> The bug is that the "key" entry must come before the "Cell" entry.  The "key" 
> entry order shouldn't matter.  If it doesn't come first, the REST interface 
> won't find the key and will use the URL's key over and over.  For example, if 
> the row key in the URL is "fakekey", then every cell would be added to the 
> same row despite the key being in the JSON.
> Here is the workaround in Python:
>       cell = OrderedDict([
>               ("key", rowKeyEncoded),
>               ("Cell", 
>               [
>                       { "column" : messagecolumnencoded, "$" : line },
>                       { "column" : usernamecolumnencoded, "$" : 
> usernameEncoded },
>                       { "column" : linenumbercolumnencoded, "$" : 
> lineNumberEncoded },
>               ])
>       ])

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to