You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2014/05/11 13:04:17 UTC

[jira] [Updated] (HBASE-2678) version the REST interface

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

Andrew Purtell updated HBASE-2678:
----------------------------------

    Assignee:     (was: Andrew Purtell)

> version the REST interface
> --------------------------
>
>                 Key: HBASE-2678
>                 URL: https://issues.apache.org/jira/browse/HBASE-2678
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Andrew Purtell
>
> As mentioned in HBASE-2563, we should deprecate all uses of _cell_ in the API and replace with new APIs that use _value_ instead. So we need a way to version the REST interface, to provide an updated API while maintaining access to the deprecated one until the next major revision. However, something like this I consider wrong:
> {{/path/to/v1/resource}}
> and also:
> {{/v2/path/to/resource}}
> because the resource is the same regardless of the representation change. REST makes a distinction between the representation and the resource using media types. 
> Currently Stargate supports the following encodings:
> * {{text/plain}}  (in some cases)
> * binary: {{application/octet-stream}} (freeform, no schema change needed)
> * XML: {{text/xml}}
> * JSON: {{application/json}}
> * protobufs: {{application/x-protobuf}}
> We can add Avro encoding support in HBASE-2557 with the new representation as {{application/x-avro-binary}} immediately. For XML, JSON, and protobuf encoding, we can support new representations using the following new media types in the current version:
> * XML: {{application/vnd.hbase+xml}}
> * JSON: {{application/vnd.hbase+json}}
> * protobufs: {{application/vnd.hbase+protobuf}}
> * and for sake of consistency: {{application/vnd.hbase+avro}}
> and then in the next major version recognize both MIME types but return the same (newer) representation. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)