You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Lars Francke (JIRA)" <ji...@apache.org> on 2011/03/14 13:35:29 UTC

[jira] Updated: (HBASE-1744) Thrift server to match the new java api.

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

Lars Francke updated HBASE-1744:
--------------------------------

    Attachment: HBASE-1744.2.patch

About the comments from Bryan: I've removed the Bytes typedef but I _haven't_ yet dealt with the namespace issue concerning Constants.java

Apart from that increment, batch and filters are missing as well as the KeyValue.Type.DeleteColumn semantic in the delete methods. I also didn't do any tests so far and I didn't move any of the new stuff in the old file as per Ryan's latest comment.

I'd favor keeping it separate instead of mangling names etc. but that's easy for me to say without having to do a migration.

I've attached the latest version of what I've done.

> Thrift server to match the new java api.
> ----------------------------------------
>
>                 Key: HBASE-1744
>                 URL: https://issues.apache.org/jira/browse/HBASE-1744
>             Project: HBase
>          Issue Type: Improvement
>          Components: thrift
>            Reporter: Tim Sell
>            Assignee: Lars Francke
>            Priority: Critical
>             Fix For: 0.92.0
>
>         Attachments: HBASE-1744.2.patch, HBASE-1744.preview.1.patch, thriftexperiment.patch
>
>
> This mutateRows, etc.. is a little confusing compared to the new cleaner java client.
> Thinking of ways to make a thrift client that is just as elegant. something like:
> void put(1:Bytes table, 2:TPut put) throws (1:IOError io)
> with:
> struct TColumn {
>   1:Bytes family,
>   2:Bytes qualifier,
>   3:i64 timestamp
> }
> struct TPut {
>   1:Bytes row,
>   2:map<TColumn, Bytes> values
> }
> This creates more verbose rpc  than if the columns in TPut were just map<Bytes, map<Bytes, Bytes>>, but that is harder to fit timestamps into and still be intuitive from say python.
> Presumably the goal of a thrift gateway is to be easy first.

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