[ 
https://issues.apache.org/jira/browse/HADOOP-2395?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12550303
 ] 

stack commented on HADOOP-2395:
-------------------------------

This looks great Bryan.

Minor comment would be that things Strings such as "IN_MEMORY" should be made 
into defines since it seems to be used in a few places.

I tried it and got this exception (Its hard to figure what the format for the 
CHANGE column_spec should be -- maybe update the help string for ALTER in 
HelpCommand?):

{code}
hql > alter table 'x' CHANGE x: MAX_VERSIONS=4;                                 
                                                                                
                                                                                
                                                                            
Disabling x... Please wait.07/12/10 20:32:23 DEBUG hbase.HBaseAdmin: Sleep. 
Waiting for first region to be disabled from x
07/12/10 20:32:33 DEBUG hbase.HBaseAdmin: Wake. Waiting for first region to be 
disabled from x
07/12/10 20:32:33 INFO hbase.HBaseAdmin: Disabled table x
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String 
index out of range: -24
        at java.lang.String.substring(String.java:1768)
        at 
org.apache.hadoop.hbase.shell.BasicCommand.extractErrMsg(BasicCommand.java:64)
        at 
org.apache.hadoop.hbase.shell.BasicCommand.extractErrMsg(BasicCommand.java:68)
        at 
org.apache.hadoop.hbase.shell.AlterCommand.execute(AlterCommand.java:113)
        at org.apache.hadoop.hbase.Shell.main(Shell.java:94)
durruti:~/Documents/checkouts/hadoop-trunk/src/contrib/hbase stack$ ./bin/hbase 
shell
07/12/10 20:33:46 DEBUG shell.TableFormatterFactory: Table formatter class: 
org.apache.hadoop.hbase.shell.formatter.AsciiTableFormatter
Hbase Shell, 0.0.2 version.
Copyright (c) 2007 by udanax, licensed to Apache Software Foundation.
Type 'help;' for usage.

hql > alter table 'x' CHANGE x: COMPRESSION=RECORD;
07/12/10 20:34:20 DEBUG hbase.HConnectionManager$TableServers: No servers for 
.META.. Doing a find...
07/12/10 20:34:20 DEBUG hbase.HConnectionManager$TableServers: Found 1 
region(s) for .META. at address: 192.168.1.135:53538, regioninfo: regionname: 
-ROOT-,,0, startKey: <>, tableDesc: {name: -ROOT-, families: {info:={name: 
info, max versions: 1, compression: NONE, in memory: false, max length: 
2147483647, bloom filter: none}}}
Disabling x... Please wait.
07/12/10 20:34:20 INFO hbase.HBaseAdmin: Disabled table x
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String 
index out of range: -24
        at java.lang.String.substring(String.java:1768)
        at 
org.apache.hadoop.hbase.shell.BasicCommand.extractErrMsg(BasicCommand.java:64)
        at 
org.apache.hadoop.hbase.shell.BasicCommand.extractErrMsg(BasicCommand.java:68)
        at 
org.apache.hadoop.hbase.shell.AlterCommand.execute(AlterCommand.java:113)
        at org.apache.hadoop.hbase.Shell.main(Shell.java:94)
~                                                              
{code}

> [hbase] Implement "ALTER TABLE ... CHANGE column" operation
> -----------------------------------------------------------
>
>                 Key: HADOOP-2395
>                 URL: https://issues.apache.org/jira/browse/HADOOP-2395
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: Bryan Duxbury
>            Assignee: Bryan Duxbury
>         Attachments: 2395.patch
>
>
> Right now, you can add or delete column families, but not change them once 
> they are created. This is really inconvenient for things like adding 
> compression or bloom filters to a column family once you get going. As new 
> people come to HBase, they're going to make schema decisions that are 
> incorrect and will need a way to modify their tables, so this is an important 
> new feature.

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

Reply via email to