You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Francis Liu (JIRA)" <ji...@apache.org> on 2013/10/08 03:02:39 UTC

[jira] [Updated] (HBASE-9435) Fix jersey serialization/deserialization of json objects

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

Francis Liu updated HBASE-9435:
-------------------------------

    Release Note: 
This patch replaces the default jersey json marshaller/unmarshaller with jackson. It updates unit tests to include json serialization/deserialization verification. 

The patch is backward compatible except for the following:

StorageClusterStatusModel, which is broken and had to be fixed in this patch. It only shows one node in the liveNodes field.

Previously when submitting requests represented in json, some fields prefixed with the '@' sign were accepted as equivalent to the same field name without the prefix. This was unintended and likely caused by a bug in Jersey. This has been rectified and no longer supported. It should be noted that responses represented in json remain the same (no '@' prefix).


  was:
This patch replaces the default jersey json marshaller/unmarshaller with jackson. It updates unit tests to include json serialization/deserialization verification. 

The patch is backward compatible except for StorageClusterStatusModel, which is broken and had to be fixed in this patch. It only shows one node in the liveNodes field.



> Fix jersey serialization/deserialization of json objects
> --------------------------------------------------------
>
>                 Key: HBASE-9435
>                 URL: https://issues.apache.org/jira/browse/HBASE-9435
>             Project: HBase
>          Issue Type: Bug
>          Components: REST
>            Reporter: Francis Liu
>            Assignee: Francis Liu
>            Priority: Blocker
>             Fix For: 0.98.0, 0.96.1
>
>         Attachments: HBASE-9435.patch, HBASE-9435.patch
>
>
> Stargate uses the default json marshaller/unmarshaller in natural mode. In this mode the unmarshaller has trouble unmarshalling json instances. 
> This patch fixes this issue by using jackson as the marshaller/unmarshaller instead. 
> I've also updated all the model unit tests to test json serialization/deserialization. Backwards compatibilty can be verified by modify the test base class to use the original marshaller/unmarshaller and see that model tests pass.
> The patch is backward compatible except for StorageClusterStatusModel, which is broken anyway. It only shows one node in the liveNodes field.



--
This message was sent by Atlassian JIRA
(v6.1#6144)