[ https://issues.apache.org/jira/browse/HBASE-13711?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14553320#comment-14553320 ]
Hudson commented on HBASE-13711: -------------------------------- FAILURE: Integrated in HBase-0.98 #995 (See [https://builds.apache.org/job/HBase-0.98/995/]) HBASE-13711 Provide an API to set min and max versions in HColumnDescriptor (Stephen Yuan Jiang) (ndimiduk: rev 10006312da7c30023479ad2703162b094f7e2334) * hbase-client/src/main/java/org/apache/hadoop/hbase/HColumnDescriptor.java * hbase-it/src/test/java/org/apache/hadoop/hbase/chaos/actions/ChangeVersionsAction.java > 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.13, 1.0.2, 1.2.0, 1.1.1 > > Attachments: HBASE-13711-v2.patch, HBASE-13711.patch, > HBASE-13711.v1-branch-1.1.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)