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 2010/10/05 23:32:40 UTC

[jira] Updated: (HBASE-2906) [rest/stargate] URI decoding in RowResource

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

Andrew Purtell updated HBASE-2906:
----------------------------------

    Fix Version/s: 0.90.0
                   0.20.7

> [rest/stargate] URI decoding in RowResource
> -------------------------------------------
>
>                 Key: HBASE-2906
>                 URL: https://issues.apache.org/jira/browse/HBASE-2906
>             Project: HBase
>          Issue Type: Bug
>          Components: rest
>    Affects Versions: 0.20.3, 0.20.4, 0.20.5, 0.20.6, 0.89.20100621
>            Reporter: Kieron Briggs
>            Assignee: Andrew Purtell
>             Fix For: 0.20.7, 0.90.0
>
>
> Currently the RowResource constructor URI-decodes the rowspec string before passing it to the RowSpec constructor, which breaks rowspecs whose row, column etc identifiers contain slashes.
> When addressing a row and/or column whose identifier contains a slash, the client must URI-encode the values, so for example a row whose identifier is 'http://hbase.apache.org/' would be addressed as:
>   /tablename/http%3a%2f%2fhbase.apache.org%2f/column:qualifier
> Currently RowResource() decodes this before passing to RowSpec(), so RowSpec() recieves:
>   /tablename/http://hbase.apache.org//column:qualifier
> which cannot be correctly parsed because of the extra slashes.
> RowResource() should pass the string on to RowSpec() undecoded, and RowSpec() should decode the components individually after piecing apart the path.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.