You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Shawn Weeks (JIRA)" <ji...@apache.org> on 2017/06/12 10:44:00 UTC

[jira] [Updated] (HIVE-16883) HBaseStorageHandler Ignores Case for HBase Table Name

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

Shawn Weeks updated HIVE-16883:
-------------------------------
    Description: 
Currently the HBaseStorageHandler is lower casing the HBase Table name. This prevent use of the storage handler with existing HBase tables that are not all lower case. Looking at the source this was done intentionally but I haven't found any documentation about why on the wiki. To prevent a change in the default behavior I'd suggest adding an additional property to the serde. 

{code}
create 'TestTable', 'd'

create external table `TestTable` (
    id bigint,
    hash String,
    location String,
    name String
    )
    stored by "org.apache.hadoop.hive.hbase.HBaseStorageHandler"
    with serdeproperties (
        "hbase.columns.mapping" = ":key,d:hash,d:location,d:name",
        "hbase.table.name" = "TestTable"
        );
{code}

  was:
Currently the HBaseStorageHandler is lower casing the HBase Table name. This prevent use of the storage handler with existing HBase tables that are not all lower case.

{code}
create 'TestTable', 'd'

create external table `TestTable` (
    id bigint,
    hash String,
    location String,
    name String
    )
    stored by "org.apache.hadoop.hive.hbase.HBaseStorageHandler"
    with serdeproperties (
        "hbase.columns.mapping" = ":key,d:hash,d:location,d:name",
        "hbase.table.name" = "TestTable"
        );
{code}


> HBaseStorageHandler Ignores Case for HBase Table Name
> -----------------------------------------------------
>
>                 Key: HIVE-16883
>                 URL: https://issues.apache.org/jira/browse/HIVE-16883
>             Project: Hive
>          Issue Type: Bug
>          Components: HBase Handler
>    Affects Versions: 1.2.1
>         Environment: Hortonworks HDP 2.6.0.3, CentOS 7.0, VMWare ESXI
>            Reporter: Shawn Weeks
>            Priority: Minor
>
> Currently the HBaseStorageHandler is lower casing the HBase Table name. This prevent use of the storage handler with existing HBase tables that are not all lower case. Looking at the source this was done intentionally but I haven't found any documentation about why on the wiki. To prevent a change in the default behavior I'd suggest adding an additional property to the serde. 
> {code}
> create 'TestTable', 'd'
> create external table `TestTable` (
>     id bigint,
>     hash String,
>     location String,
>     name String
>     )
>     stored by "org.apache.hadoop.hive.hbase.HBaseStorageHandler"
>     with serdeproperties (
>         "hbase.columns.mapping" = ":key,d:hash,d:location,d:name",
>         "hbase.table.name" = "TestTable"
>         );
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)