You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by ap...@apache.org on 2010/04/02 01:35:24 UTC

svn commit: r930138 - in /hadoop/hbase/trunk: CHANGES.txt contrib/stargate/core/src/main/java/org/apache/hadoop/hbase/stargate/RowSpec.java

Author: apurtell
Date: Thu Apr  1 23:35:24 2010
New Revision: 930138

URL: http://svn.apache.org/viewvc?rev=930138&view=rev
Log:
HBASE-2402 [stargate] set maxVersions on gets

Modified:
    hadoop/hbase/trunk/CHANGES.txt
    hadoop/hbase/trunk/contrib/stargate/core/src/main/java/org/apache/hadoop/hbase/stargate/RowSpec.java

Modified: hadoop/hbase/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/CHANGES.txt?rev=930138&r1=930137&r2=930138&view=diff
==============================================================================
--- hadoop/hbase/trunk/CHANGES.txt (original)
+++ hadoop/hbase/trunk/CHANGES.txt Thu Apr  1 23:35:24 2010
@@ -507,6 +507,7 @@ Release 0.21.0 - Unreleased
                (Alexey Kovyrin via Stack)
    HBASE-2327  [EC2] Allocate elastic IP addresses for ZK and master nodes
    HBASE-2319  [stargate] multiuser mode: request shaping
+   HBASE-2402  [stargate] set maxVersions on gets
 
   OPTIMIZATIONS
    HBASE-410   [testing] Speed up the test suite

Modified: hadoop/hbase/trunk/contrib/stargate/core/src/main/java/org/apache/hadoop/hbase/stargate/RowSpec.java
URL: http://svn.apache.org/viewvc/hadoop/hbase/trunk/contrib/stargate/core/src/main/java/org/apache/hadoop/hbase/stargate/RowSpec.java?rev=930138&r1=930137&r2=930138&view=diff
==============================================================================
--- hadoop/hbase/trunk/contrib/stargate/core/src/main/java/org/apache/hadoop/hbase/stargate/RowSpec.java (original)
+++ hadoop/hbase/trunk/contrib/stargate/core/src/main/java/org/apache/hadoop/hbase/stargate/RowSpec.java Thu Apr  1 23:35:24 2010
@@ -36,6 +36,8 @@ import org.apache.hadoop.hbase.util.Byte
 public class RowSpec {
   public static final long DEFAULT_START_TIMESTAMP = 0;
   public static final long DEFAULT_END_TIMESTAMP = Long.MAX_VALUE;
+  
+  private static final String versionPrefix = "?v=";
 
   private byte[] row = HConstants.EMPTY_START_ROW;
   private byte[] endRow = null;
@@ -53,6 +55,7 @@ public class RowSpec {
     i = parseRowKeys(path, i);
     i = parseColumns(path, i);
     i = parseTimestamp(path, i);
+    i = parseMaxVersions(path, i);
   }
 
   private int parseRowKeys(final String path, int i)
@@ -198,6 +201,15 @@ public class RowSpec {
     return i;
   }
 
+  private int parseMaxVersions(final String path, int i) {
+    String s = path.substring(i);
+    if (s.startsWith(versionPrefix)) {
+      this.maxVersions = Integer.valueOf(s.substring(versionPrefix.length()));
+      i += s.length();
+    }
+    return i;
+  }
+
   public RowSpec(byte[] startRow, byte[] endRow, byte[][] columns,
       long startTime, long endTime, int maxVersions) {
     this.row = startRow;