hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephen Yuan Jiang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-13711) Provide an API to set min and max versions in HColumnDescriptor
Date Tue, 19 May 2015 22:10:00 GMT

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

Stephen Yuan Jiang commented on HBASE-13711:
--------------------------------------------

ok, I will have a different patch for branch-1.1 (the master patch is more flexible): the
patch for branch-1.1 rely on that HColumnDescriptor#setMinVersions() does not care the input
value.

> Provide an API to set min and max versions in HColumnDescriptor
> ---------------------------------------------------------------
>
>                 Key: HBASE-13711
>                 URL: https://issues.apache.org/jira/browse/HBASE-13711
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.0.0, 1.1.0, 1.2.0
>            Reporter: Stephen Yuan Jiang
>            Assignee: Stephen Yuan Jiang
>            Priority: Minor
>             Fix For: 2.0.0, 0.98.14, 1.2.0
>
>         Attachments: HBASE-13711-v2.patch, HBASE-13711.patch
>
>
> In org.apache.hadoop.hbase.chaos.actions.ChangeVersionsAction#perform(), it tries to
update the max and min versions in a column descriptor: 
> {code}
>      for(HColumnDescriptor descriptor:columnDescriptors) {
>        descriptor.setMaxVersions(versions);
>        descriptor.setMinVersions(versions);
>      }
> {code}
> If the current minimum version is greater than the new max version, an IllegalArgumentException
would throw from org.apache.hadoop.hbase.HColumnDescriptor#setMaxVersions().  
> Here is an example (trying to set max version to 1 while currently min version is 2):
> {noformat}
> java.lang.IllegalArgumentException: Set MaxVersion to 1 while minVersion is 2. Maximum
versions must be >= minimum versions
> at org.apache.hadoop.hbase.HColumnDescriptor.setMaxVersions(HColumnDescriptor.java:634)
> at org.apache.hadoop.hbase.chaos.actions.ChangeVersionsAction.perform(ChangeVersionsAction.java:62)
> {noformat}
> One solution is to change the order of set - set min version first and then set max version
(note: the current implement of org.apache.hadoop.hbase.HColumnDescriptor#setMinVersions()
does not check the min version value and blindly set the version.  Not sure whether this is
by-design).
> Another solution is to provide an API to set both min and max version in one function
call.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message