You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Anoop Sam John (JIRA)" <ji...@apache.org> on 2013/06/21 10:38:21 UTC

[jira] [Commented] (HBASE-8780) a column Family can have VERSIONS less than zero

    [ https://issues.apache.org/jira/browse/HBASE-8780?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13690134#comment-13690134 ] 

Anoop Sam John commented on HBASE-8780:
---------------------------------------

Looks good..  Can u attach a patch for Trunk? Then we can run HadoopQA
                
> a column Family can have VERSIONS less than zero 
> -------------------------------------------------
>
>                 Key: HBASE-8780
>                 URL: https://issues.apache.org/jira/browse/HBASE-8780
>             Project: HBase
>          Issue Type: Bug
>          Components: Client
>    Affects Versions: 0.94.8
>            Reporter: Demai Ni
>            Priority: Trivial
>         Attachments: HBASE-8780-0.94.8-v0.patch, HBASE-8780-test.txt
>
>
> User can create/alter a columnfam and set its VERSION(aka maxVERSIONS) to a negative or zero value. Although there is a checking in HColumnDesciptor#construtor, hbase shell command will invoke the setter(setMaxVersions and setMinVersions) directly, hence by pass the checking.  For example:
> {code:title=set VERSIONS = -1}
> hbase(main):016:0> create 't5_dn',{NAME=>'cf1',VERSIONS=>-1}
> 0 row(s) in 1.0420 seconds
> hbase(main):017:0> put 't5_dn','row1','cf1:q1','row1cf1_v1'
> 0 row(s) in 0.0700 seconds
> hbase(main):018:0> scan 't5_dn'
> ROW                   COLUMN+CELL                                              
> 0 row(s) in 0.0090 seconds
> hbase(main):019:0> describe 't5_dn'
> DESCRIPTION                                          ENABLED                    
> 't5_dn', {NAME => 'cf1', REPLICATION_SCOPE => '0',  true                      
> KEEP_DELETED_CELLS => 'false', COMPRESSION => 'NONE                            
> ', ENCODE_ON_DISK => 'true', BLOCKCACHE => 'true',                            
> MIN_VERSIONS => '0', DATA_BLOCK_ENCODING => 'NONE',                            
>  IN_MEMORY => 'false', BLOOMFILTER => 'NONE', TTL =                            
> > '2147483647', VERSIONS => '-1', BLOCKSIZE => '655                            
> 36'}                                                                          
> 1 row(s) in 0.0410 seconds
> {code}
> above example shows VERSIONS => '-1', and put/scan doesn't keep the data

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira