瀏覽代碼

HADOOP-2240 Truncate for hbase

git-svn-id: https://svn.apache.org/repos/asf/lucene/hadoop/trunk@609254 13f79535-47bb-0310-9956-ffa450edef68
Michael Stack 17 年之前
父節點
當前提交
26907748d6

+ 1 - 0
src/contrib/hbase/CHANGES.txt

@@ -20,6 +20,7 @@ Trunk (unreleased changes)
                 (Bryan Duxbury via Stack)
     HADOOP-2395 Implement "ALTER TABLE ... CHANGE column" operation
                 (Bryan Duxbury via Stack)
+    HADOOP-2240 Truncate for hbase (Edward Yoon via Stack)
 
   OPTIMIZATIONS
    HADOOP-2479 Save on number of Text object creations

+ 1 - 0
src/contrib/hbase/src/java/org/apache/hadoop/hbase/Shell.java

@@ -48,6 +48,7 @@ public class Shell {
   public static String MASTER_ADDRESS = null;
   public static String HTML_OPTION = null;
   public static int RELAUNCH_FLAG = 7;
+  public static int EXIT_FLAG = 9999;
 
   /** Return the boolean value indicating whether end of command or not */
   static boolean isEndOfCommand(String line) {

+ 23 - 24
src/contrib/hbase/src/java/org/apache/hadoop/hbase/shell/AlterCommand.java

@@ -53,6 +53,7 @@ public class AlterCommand extends SchemaModificationCommand {
     super(o);
   }
 
+  @SuppressWarnings("unchecked")
   public ReturnMsg execute(HBaseConfiguration conf) {
     try {
       HConnection conn = HConnectionManager.getConnection(conf);
@@ -76,34 +77,34 @@ public class AlterCommand extends SchemaModificationCommand {
           break;
         case DROP:
           disableTable(admin, tableName);
-          println("Dropping " + column + " from " + tableName
-              + "... Please wait.");
+          println("Dropping " + column + " from " + tableName + "... Please wait.");
           column = appendDelimiter(column);
           admin.deleteColumn(new Text(tableName), new Text(column));
           enableTable(admin, tableName);
           break;
         case CHANGE:
           disableTable(admin, tableName);
-          
-          Map.Entry<String, Map<String, Object>> columnEntry = 
-            (Map.Entry<String, Map<String, Object>>)columnSpecMap.entrySet().toArray()[0];
+
+          Map.Entry<String, Map<String, Object>> columnEntry = (Map.Entry<String, Map<String, Object>>) columnSpecMap
+              .entrySet().toArray()[0];
 
           // add the : if there isn't one
-          Text columnName = new Text(columnEntry.getKey().endsWith(":") ? 
-            columnEntry.getKey() : columnEntry.getKey() + ":");
-          
+          Text columnName = new Text(
+              columnEntry.getKey().endsWith(":") ? columnEntry.getKey()
+                  : columnEntry.getKey() + ":");
+
           // get the table descriptor so we can get the old column descriptor
           HTableDescriptor tDesc = getTableDescByName(admin, tableName);
           HColumnDescriptor oldColumnDesc = tDesc.families().get(columnName);
 
-          // combine the options specified in the shell with the options 
+          // combine the options specified in the shell with the options
           // from the exiting descriptor to produce the new descriptor
-          columnDesc = getColumnDescriptor(columnName.toString(), 
-            columnEntry.getValue(), oldColumnDesc);
-          
+          columnDesc = getColumnDescriptor(columnName.toString(), columnEntry
+              .getValue(), oldColumnDesc);
+
           // send the changes out to the master
           admin.modifyColumn(new Text(tableName), columnName, columnDesc);
-          
+
           enableTable(admin, tableName);
           break;
         case NOOP:
@@ -166,26 +167,26 @@ public class AlterCommand extends SchemaModificationCommand {
   public CommandType getCommandType() {
     return CommandType.DDL;
   }
-  
+
   private HTableDescriptor getTableDescByName(HBaseAdmin admin, String tableName)
-  throws IOException{
+      throws IOException {
     HTableDescriptor[] tables = admin.listTables();
-    for(HTableDescriptor tDesc : tables){
+    for (HTableDescriptor tDesc : tables) {
       if (tDesc.getName().toString().equals(tableName)) {
         return tDesc;
       }
     }
     return null;
   }
-  
+
   /**
-   * Given a column name, column spec, and original descriptor, returns an 
+   * Given a column name, column spec, and original descriptor, returns an
    * instance of HColumnDescriptor representing the column spec, with empty
    * values drawn from the original as defaults
    */
   protected HColumnDescriptor getColumnDescriptor(String column,
-    Map<String, Object> columnSpec, HColumnDescriptor original) 
-  throws IllegalArgumentException {
+      Map<String, Object> columnSpec, HColumnDescriptor original)
+      throws IllegalArgumentException {
     initOptions(original);
 
     Set<String> specs = columnSpec.keySet();
@@ -197,8 +198,8 @@ public class AlterCommand extends SchemaModificationCommand {
       } else if (spec.equals("MAX_LENGTH")) {
         maxLength = (Integer) columnSpec.get(spec);
       } else if (spec.equals("COMPRESSION")) {
-        compression = HColumnDescriptor.CompressionType
-            .valueOf(((String) columnSpec.get(spec)).toUpperCase());
+        compression = HColumnDescriptor.CompressionType.valueOf(((String) columnSpec
+            .get(spec)).toUpperCase());
       } else if (spec.equals("IN_MEMORY")) {
         inMemory = (Boolean) columnSpec.get(spec);
       } else if (spec.equals("BLOOMFILTER")) {
@@ -244,6 +245,4 @@ public class AlterCommand extends SchemaModificationCommand {
     inMemory = original.isInMemory();
     bloomFilterDesc = original.getBloomFilter();
   }
-
-  
 }

+ 26 - 16
src/contrib/hbase/src/java/org/apache/hadoop/hbase/shell/HBaseShell.jj

@@ -79,6 +79,7 @@ TOKEN: /** for HQL statements */
    | <DESC: "desc">
    | <CREATE: "create">   
    | <DROP: "drop">
+   | <TRUNCATE: "truncate">
    | <FS: "fs">
    | <JAR: "jar">
    | <EXIT: "exit">
@@ -171,6 +172,7 @@ Command cmdStatement() :
       | cmd = descCommand()
       | cmd = createCommand()
       | cmd = dropCommand()
+      | cmd = truncateCommand()
       | cmd = alterCommand()
       | cmd = insertCommand()
       | cmd = deleteCommand()
@@ -218,17 +220,9 @@ JarCommand jarCommand() :
   Token t = null;
   JarCommand jar = new JarCommand(this.out);
   List<String> query = new ArrayList<String>();
-  String path = "";
 }
 {
   <JAR>
-  (
-      ( t=<ID> | t=<INTEGER_LITERAL> | t=<FLOATING_POINT_LITERAL> )
-      { path += t.image.toString(); }
-  )*
-  t=<JAR>
-  { query.add(path + t.image.toString()); }
-  
   (
       ( t=<ID> | t=<INTEGER_LITERAL> | t=<FLOATING_POINT_LITERAL> )
       { query.add(t.image.toString()); }
@@ -240,6 +234,22 @@ JarCommand jarCommand() :
   }
 }
 
+TruncateCommand truncateCommand() :
+{
+  TruncateCommand truncate = new TruncateCommand(this.out);
+  String tableName = null;
+}
+{
+  <TRUNCATE><TABLE>
+  [
+    tableName = identifier()
+  ]
+  {
+    truncate.setTableName(tableName);
+    return truncate;
+  }
+}
+
 HelpCommand helpCommand() :
 {
   Token t = null;
@@ -311,7 +321,7 @@ Map<String, Object> ColumnSpec() :
 {
   (
     <MAX_VERSIONS> 
-     <EQUALS> n = Number() 
+     <EQUALS> n = number() 
     { 
        if(n < 0) {
          n = Integer.MAX_VALUE;
@@ -320,7 +330,7 @@ Map<String, Object> ColumnSpec() :
     }
    |
     <MAX_LENGTH>
-     <EQUALS> n = Number()
+     <EQUALS> n = number()
     {  
       columnSpec.put("MAX_LENGTH", n); 
     }
@@ -350,18 +360,18 @@ Map<String, Object> ColumnSpec() :
     }
    |  
     <VECTOR_SIZE> 
-    <EQUALS> n = Number() 
+    <EQUALS> n = number() 
     { 
       columnSpec.put("VECTOR_SIZE", n); 
     }
    |
     <NUM_HASH>
-    <EQUALS> n = Number()
+    <EQUALS> n = number()
     { 
       columnSpec.put("NUM_HASH", n); 
     }  
    |
-    <NUM_ENTRIES> <EQUALS> n = Number()
+    <NUM_ENTRIES> <EQUALS> n = number()
     { 
       columnSpec.put("NUM_ENTRIES", n); 
     }
@@ -581,13 +591,13 @@ SelectCommand selectCommand() :
   ]
    
   [
-     <NUM_VERSIONS><EQUALS> numVersion = Number()
+     <NUM_VERSIONS><EQUALS> numVersion = number()
       {
         select.setVersion(numVersion);
       }
   ]
 
-  [ <LIMIT><EQUALS> limit = Number() {
+  [ <LIMIT><EQUALS> limit = number() {
       try{
         select.setLimit(limit);
       }catch(ClassCastException ce) {
@@ -746,7 +756,7 @@ List<String> columnList() :
   { return columnList; }
 }
 
-int Number() :
+int number() :
 {
   Token t = null;
   Token minusSignedInt = null;

+ 4 - 0
src/contrib/hbase/src/java/org/apache/hadoop/hbase/shell/HelpCommand.java

@@ -119,6 +119,10 @@ public class HelpCommand extends BasicCommand {
             + "CHANGE column_family column_spec | "
             + "DROP column_family_name | " + "CHANGE column_spec;" });
 
+    load.put("TRUNCATE", new String[] {
+         "Truncate table is used to clean all data from a table",
+         "TRUNCATE TABLE table_name;" });
+    
     load.put("EXIT", new String[] { "Exit shell", "EXIT;" });
 
     return load;

+ 1 - 1
src/contrib/hbase/src/java/org/apache/hadoop/hbase/shell/ShellSecurityManager.java

@@ -43,7 +43,7 @@ public class ShellSecurityManager extends SecurityManager {
    */
   @SuppressWarnings("static-access")
   public void checkExit(int status) {
-    if (status != 9999) {
+    if (status != Shell.EXIT_FLAG) {
       // throw new ExitException(status);
 
       // I didn't figure out How can catch the ExitException in shell main.

+ 0 - 1
src/contrib/hbase/src/java/org/apache/hadoop/hbase/shell/ShowCommand.java

@@ -21,7 +21,6 @@ package org.apache.hadoop.hbase.shell;
 
 import java.io.IOException;
 import java.io.Writer;
-import java.util.Map;
 
 import org.apache.hadoop.hbase.HBaseAdmin;
 import org.apache.hadoop.hbase.HBaseConfiguration;

+ 103 - 110
src/contrib/hbase/src/java/org/apache/hadoop/hbase/shell/generated/Parser.java

@@ -67,6 +67,7 @@ public class Parser implements ParserConstants {
     case DESC:
     case CREATE:
     case DROP:
+    case TRUNCATE:
     case FS:
     case JAR:
     case EXIT:
@@ -75,7 +76,7 @@ public class Parser implements ParserConstants {
     case SELECT:
     case ENABLE:
     case DISABLE:
-    case 65:
+    case 66:
       switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
       case HELP:
       case ALTER:
@@ -85,6 +86,7 @@ public class Parser implements ParserConstants {
       case DESC:
       case CREATE:
       case DROP:
+      case TRUNCATE:
       case FS:
       case JAR:
       case EXIT:
@@ -99,7 +101,7 @@ public class Parser implements ParserConstants {
         jj_la1[0] = jj_gen;
         ;
       }
-      jj_consume_token(65);
+      jj_consume_token(66);
       break;
     case 0:
       jj_consume_token(0);
@@ -135,6 +137,9 @@ public class Parser implements ParserConstants {
     case DROP:
       cmd = dropCommand();
       break;
+    case TRUNCATE:
+      cmd = truncateCommand();
+      break;
     case ALTER:
       cmd = alterCommand();
       break;
@@ -205,7 +210,6 @@ public class Parser implements ParserConstants {
   Token t = null;
   JarCommand jar = new JarCommand(this.out);
   List<String> query = new ArrayList<String>();
-  String path = "";
     jj_consume_token(JAR);
     label_2:
     while (true) {
@@ -233,37 +237,6 @@ public class Parser implements ParserConstants {
         jj_la1[5] = jj_gen;
         jj_consume_token(-1);
         throw new ParseException();
-      }
-        path += t.image.toString();
-    }
-    t = jj_consume_token(JAR);
-    query.add(path + t.image.toString());
-    label_3:
-    while (true) {
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case ID:
-      case INTEGER_LITERAL:
-      case FLOATING_POINT_LITERAL:
-        ;
-        break;
-      default:
-        jj_la1[6] = jj_gen;
-        break label_3;
-      }
-      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
-      case ID:
-        t = jj_consume_token(ID);
-        break;
-      case INTEGER_LITERAL:
-        t = jj_consume_token(INTEGER_LITERAL);
-        break;
-      case FLOATING_POINT_LITERAL:
-        t = jj_consume_token(FLOATING_POINT_LITERAL);
-        break;
-      default:
-        jj_la1[7] = jj_gen;
-        jj_consume_token(-1);
-        throw new ParseException();
       }
         query.add(t.image.toString());
     }
@@ -272,6 +245,26 @@ public class Parser implements ParserConstants {
     throw new Error("Missing return statement in function");
   }
 
+  final public TruncateCommand truncateCommand() throws ParseException {
+  TruncateCommand truncate = new TruncateCommand(this.out);
+  String tableName = null;
+    jj_consume_token(TRUNCATE);
+    jj_consume_token(TABLE);
+    switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
+    case ID:
+    case QUOTED_IDENTIFIER:
+    case STRING_LITERAL:
+      tableName = identifier();
+      break;
+    default:
+      jj_la1[6] = jj_gen;
+      ;
+    }
+    truncate.setTableName(tableName);
+    {if (true) return truncate;}
+    throw new Error("Missing return statement in function");
+  }
+
   final public HelpCommand helpCommand() throws ParseException {
   Token t = null;
   HelpCommand help = new HelpCommand(this.out, this.formatter);
@@ -332,14 +325,14 @@ public class Parser implements ParserConstants {
         t = jj_consume_token(ID);
         break;
       default:
-        jj_la1[8] = jj_gen;
+        jj_la1[7] = jj_gen;
         jj_consume_token(-1);
         throw new ParseException();
       }
          argument = t.image.toString();
       break;
     default:
-      jj_la1[9] = jj_gen;
+      jj_la1[8] = jj_gen;
       ;
     }
       help.setArgument(argument);
@@ -358,7 +351,7 @@ public class Parser implements ParserConstants {
       argument = identifier();
       break;
     default:
-      jj_la1[10] = jj_gen;
+      jj_la1[9] = jj_gen;
       ;
     }
       show.setArgument(argument);
@@ -377,7 +370,7 @@ public class Parser implements ParserConstants {
       jj_consume_token(DESC);
       break;
     default:
-      jj_la1[11] = jj_gen;
+      jj_la1[10] = jj_gen;
       jj_consume_token(-1);
       throw new ParseException();
     }
@@ -391,7 +384,7 @@ public class Parser implements ParserConstants {
   Map<String, Object> columnSpec = new HashMap<String, Object>();
   int n = -1;
   Token t = null;
-    label_4:
+    label_3:
     while (true) {
       switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
       case MAX_VERSIONS:
@@ -405,14 +398,14 @@ public class Parser implements ParserConstants {
         ;
         break;
       default:
-        jj_la1[12] = jj_gen;
-        break label_4;
+        jj_la1[11] = jj_gen;
+        break label_3;
       }
       switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
       case MAX_VERSIONS:
         jj_consume_token(MAX_VERSIONS);
         jj_consume_token(EQUALS);
-        n = Number();
+        n = number();
        if(n < 0) {
          n = Integer.MAX_VALUE;
        }
@@ -421,7 +414,7 @@ public class Parser implements ParserConstants {
       case MAX_LENGTH:
         jj_consume_token(MAX_LENGTH);
         jj_consume_token(EQUALS);
-        n = Number();
+        n = number();
       columnSpec.put("MAX_LENGTH", n);
         break;
       case COMPRESSION:
@@ -438,7 +431,7 @@ public class Parser implements ParserConstants {
           t = jj_consume_token(RECORD);
           break;
         default:
-          jj_la1[13] = jj_gen;
+          jj_la1[12] = jj_gen;
           jj_consume_token(-1);
           throw new ParseException();
         }
@@ -462,7 +455,7 @@ public class Parser implements ParserConstants {
           t = jj_consume_token(RETOUCHED_BLOOMFILTER);
           break;
         default:
-          jj_la1[14] = jj_gen;
+          jj_la1[13] = jj_gen;
           jj_consume_token(-1);
           throw new ParseException();
         }
@@ -471,23 +464,23 @@ public class Parser implements ParserConstants {
       case VECTOR_SIZE:
         jj_consume_token(VECTOR_SIZE);
         jj_consume_token(EQUALS);
-        n = Number();
+        n = number();
       columnSpec.put("VECTOR_SIZE", n);
         break;
       case NUM_HASH:
         jj_consume_token(NUM_HASH);
         jj_consume_token(EQUALS);
-        n = Number();
+        n = number();
       columnSpec.put("NUM_HASH", n);
         break;
       case NUM_ENTRIES:
         jj_consume_token(NUM_ENTRIES);
         jj_consume_token(EQUALS);
-        n = Number();
+        n = number();
       columnSpec.put("NUM_ENTRIES", n);
         break;
       default:
-        jj_la1[15] = jj_gen;
+        jj_la1[14] = jj_gen;
         jj_consume_token(-1);
         throw new ParseException();
       }
@@ -509,15 +502,15 @@ public class Parser implements ParserConstants {
     column = identifier();
     columnSpec = ColumnSpec();
     createCommand.addColumnSpec(column, columnSpec);
-    label_5:
+    label_4:
     while (true) {
       switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
       case COMMA:
         ;
         break;
       default:
-        jj_la1[16] = jj_gen;
-        break label_5;
+        jj_la1[15] = jj_gen;
+        break label_4;
       }
       jj_consume_token(COMMA);
       column = identifier();
@@ -553,15 +546,15 @@ public class Parser implements ParserConstants {
         column = identifier();
         columnSpec = ColumnSpec();
       alterCommand.addColumnSpec(column, columnSpec);
-        label_6:
+        label_5:
         while (true) {
           switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
           case COMMA:
             ;
             break;
           default:
-            jj_la1[17] = jj_gen;
-            break label_6;
+            jj_la1[16] = jj_gen;
+            break label_5;
           }
           jj_consume_token(COMMA);
           column = identifier();
@@ -584,7 +577,7 @@ public class Parser implements ParserConstants {
       alterCommand.addColumnSpec(column, columnSpec);
         break;
       default:
-        jj_la1[18] = jj_gen;
+        jj_la1[17] = jj_gen;
         jj_consume_token(-1);
         throw new ParseException();
       }
@@ -630,7 +623,7 @@ public class Parser implements ParserConstants {
       t = jj_consume_token(QUOTED_IDENTIFIER);
       break;
     default:
-      jj_la1[19] = jj_gen;
+      jj_la1[18] = jj_gen;
       jj_consume_token(-1);
       throw new ParseException();
     }
@@ -663,14 +656,14 @@ public class Parser implements ParserConstants {
         t = jj_consume_token(QUOTED_IDENTIFIER);
         break;
       default:
-        jj_la1[20] = jj_gen;
+        jj_la1[19] = jj_gen;
         jj_consume_token(-1);
         throw new ParseException();
       }
      deleteCommand.setRow(t.image.substring(1, t.image.length()-1));
       break;
     default:
-      jj_la1[21] = jj_gen;
+      jj_la1[20] = jj_gen;
       ;
     }
     {if (true) return deleteCommand;}
@@ -706,7 +699,7 @@ public class Parser implements ParserConstants {
         jj_consume_token(FROM);
         break;
       default:
-        jj_la1[22] = jj_gen;
+        jj_la1[21] = jj_gen;
         jj_consume_token(-1);
         throw new ParseException();
       }
@@ -714,7 +707,7 @@ public class Parser implements ParserConstants {
        select.setRowKey(rowKey);
       break;
     default:
-      jj_la1[23] = jj_gen;
+      jj_la1[22] = jj_gen;
       ;
     }
     switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -724,25 +717,25 @@ public class Parser implements ParserConstants {
        select.setTimestamp(timestamp);
       break;
     default:
-      jj_la1[24] = jj_gen;
+      jj_la1[23] = jj_gen;
       ;
     }
     switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
     case NUM_VERSIONS:
       jj_consume_token(NUM_VERSIONS);
       jj_consume_token(EQUALS);
-      numVersion = Number();
+      numVersion = number();
         select.setVersion(numVersion);
       break;
     default:
-      jj_la1[25] = jj_gen;
+      jj_la1[24] = jj_gen;
       ;
     }
     switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
     case LIMIT:
       jj_consume_token(LIMIT);
       jj_consume_token(EQUALS);
-      limit = Number();
+      limit = number();
       try{
         select.setLimit(limit);
       }catch(ClassCastException ce) {
@@ -750,7 +743,7 @@ public class Parser implements ParserConstants {
       }
       break;
     default:
-      jj_la1[26] = jj_gen;
+      jj_la1[25] = jj_gen;
       ;
     }
     {if (true) return select;}
@@ -790,7 +783,7 @@ public class Parser implements ParserConstants {
     jj_consume_token(LPAREN);
    literal = getStringLiteral();
  if(literal != null) values.add(literal);
-    label_7:
+    label_6:
     while (true) {
       switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
       case COMMA:
@@ -800,8 +793,8 @@ public class Parser implements ParserConstants {
         ;
         break;
       default:
-        jj_la1[27] = jj_gen;
-        break label_7;
+        jj_la1[26] = jj_gen;
+        break label_6;
       }
       switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
       case COMMA:
@@ -823,14 +816,14 @@ public class Parser implements ParserConstants {
           jj_consume_token(QUOTED_IDENTIFIER);
           break;
         default:
-          jj_la1[28] = jj_gen;
+          jj_la1[27] = jj_gen;
           jj_consume_token(-1);
           throw new ParseException();
         }
        values.removeAll(values);
         break;
       default:
-        jj_la1[29] = jj_gen;
+        jj_la1[28] = jj_gen;
         jj_consume_token(-1);
         throw new ParseException();
       }
@@ -850,7 +843,7 @@ public class Parser implements ParserConstants {
       s = jj_consume_token(QUOTED_IDENTIFIER);
       break;
     default:
-      jj_la1[30] = jj_gen;
+      jj_la1[29] = jj_gen;
       jj_consume_token(-1);
       throw new ParseException();
     }
@@ -876,7 +869,7 @@ public class Parser implements ParserConstants {
         col = jj_consume_token(ASTERISK);
         break;
       default:
-        jj_la1[31] = jj_gen;
+        jj_la1[30] = jj_gen;
         jj_consume_token(-1);
         throw new ParseException();
       }
@@ -892,14 +885,14 @@ public class Parser implements ParserConstants {
         col = jj_consume_token(STRING_LITERAL);
         break;
       default:
-        jj_la1[32] = jj_gen;
+        jj_la1[31] = jj_gen;
         jj_consume_token(-1);
         throw new ParseException();
       }
         {if (true) return col.image.substring(1,col.image.toString().length() - 1);}
       break;
     default:
-      jj_la1[33] = jj_gen;
+      jj_la1[32] = jj_gen;
       jj_consume_token(-1);
       throw new ParseException();
     }
@@ -912,15 +905,15 @@ public class Parser implements ParserConstants {
     jj_consume_token(LPAREN);
    literal = getColumn();
  if(literal != null) values.add(literal);
-    label_8:
+    label_7:
     while (true) {
       switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
       case COMMA:
         ;
         break;
       default:
-        jj_la1[34] = jj_gen;
-        break label_8;
+        jj_la1[33] = jj_gen;
+        break label_7;
       }
       jj_consume_token(COMMA);
         literal = getColumn();
@@ -936,15 +929,15 @@ public class Parser implements ParserConstants {
   String table = null;
     table = identifier();
                          tableList.add(table);
-    label_9:
+    label_8:
     while (true) {
       switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
       case COMMA:
         ;
         break;
       default:
-        jj_la1[35] = jj_gen;
-        break label_9;
+        jj_la1[34] = jj_gen;
+        break label_8;
       }
       jj_consume_token(COMMA);
       table = identifier();
@@ -963,15 +956,15 @@ public class Parser implements ParserConstants {
       } else {
         {if (true) return columnList;}
       }
-    label_10:
+    label_9:
     while (true) {
       switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
       case COMMA:
         ;
         break;
       default:
-        jj_la1[36] = jj_gen;
-        break label_10;
+        jj_la1[35] = jj_gen;
+        break label_9;
       }
       jj_consume_token(COMMA);
       column = getColumn();
@@ -981,7 +974,7 @@ public class Parser implements ParserConstants {
     throw new Error("Missing return statement in function");
   }
 
-  final public int Number() throws ParseException {
+  final public int number() throws ParseException {
   Token t = null;
   Token minusSignedInt = null;
     switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -992,7 +985,7 @@ public class Parser implements ParserConstants {
       t = jj_consume_token(INTEGER_LITERAL);
       break;
     default:
-      jj_la1[37] = jj_gen;
+      jj_la1[36] = jj_gen;
       jj_consume_token(-1);
       throw new ParseException();
     }
@@ -1021,14 +1014,14 @@ public class Parser implements ParserConstants {
         t = jj_consume_token(STRING_LITERAL);
         break;
       default:
-        jj_la1[38] = jj_gen;
+        jj_la1[37] = jj_gen;
         jj_consume_token(-1);
         throw new ParseException();
       }
        {if (true) return t.image.substring(1,t.image.toString().length() - 1);}
       break;
     default:
-      jj_la1[39] = jj_gen;
+      jj_la1[38] = jj_gen;
       jj_consume_token(-1);
       throw new ParseException();
     }
@@ -1049,33 +1042,33 @@ public class Parser implements ParserConstants {
     finally { jj_save(0, xla); }
   }
 
-  final private boolean jj_3R_13() {
+  final private boolean jj_3R_12() {
     Token xsp;
     xsp = jj_scanpos;
-    if (jj_scan_token(63)) {
+    if (jj_scan_token(64)) {
     jj_scanpos = xsp;
-    if (jj_scan_token(64)) return true;
+    if (jj_scan_token(65)) return true;
     }
     return false;
   }
 
   final private boolean jj_3_1() {
     if (jj_scan_token(ADD)) return true;
-    if (jj_3R_11()) return true;
+    if (jj_3R_10()) return true;
     return false;
   }
 
-  final private boolean jj_3R_12() {
+  final private boolean jj_3R_11() {
     if (jj_scan_token(ID)) return true;
     return false;
   }
 
-  final private boolean jj_3R_11() {
+  final private boolean jj_3R_10() {
     Token xsp;
     xsp = jj_scanpos;
-    if (jj_3R_12()) {
+    if (jj_3R_11()) {
     jj_scanpos = xsp;
-    if (jj_3R_13()) return true;
+    if (jj_3R_12()) return true;
     }
     return false;
   }
@@ -1089,7 +1082,7 @@ public class Parser implements ParserConstants {
   public boolean lookingAhead = false;
   private boolean jj_semLA;
   private int jj_gen;
-  final private int[] jj_la1 = new int[40];
+  final private int[] jj_la1 = new int[39];
   static private int[] jj_la1_0;
   static private int[] jj_la1_1;
   static private int[] jj_la1_2;
@@ -1099,13 +1092,13 @@ public class Parser implements ParserConstants {
       jj_la1_2();
    }
    private static void jj_la1_0() {
-      jj_la1_0 = new int[] {0x79ffe0,0x79ffe1,0x79ffe0,0x0,0x0,0x0,0x0,0x0,0x19fbc0,0x19fbc0,0x0,0x600,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x1000000,0x1800000,0x1800000,0x20000000,0x40000000,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,};
+      jj_la1_0 = new int[] {0xf3ffe0,0xf3ffe1,0xf3ffe0,0x0,0x0,0x0,0x0,0x33dbc0,0x33dbc0,0x0,0x600,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x2000000,0x3000000,0x3000000,0x40000000,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,};
    }
    private static void jj_la1_1() {
-      jj_la1_1 = new int[] {0x0,0x0,0x0,0x8000000,0x38000000,0x38000000,0x38000000,0x38000000,0x8000000,0x8000000,0x88000000,0x0,0x1cc7000,0x38000,0x380000,0x1cc7000,0x4,0x4,0x6000000,0x80000000,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x88000004,0x88000000,0x88000004,0x80000000,0x18000800,0x80000000,0x98000800,0x4,0x4,0x4,0x18000000,0x80000000,0x88000000,};
+      jj_la1_1 = new int[] {0x0,0x0,0x0,0x10000000,0x70000000,0x70000000,0x10000000,0x10000000,0x10000000,0x10000000,0x0,0x398e000,0x70000,0x700000,0x398e000,0x8,0x8,0xc000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x10000008,0x10000000,0x10000008,0x0,0x30001000,0x0,0x30001000,0x8,0x8,0x8,0x30000000,0x0,0x10000000,};
    }
    private static void jj_la1_2() {
-      jj_la1_2 = new int[] {0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x1,0x1,0x1,0x0,0x1,0x1,0x0,0x0,0x0,0x0,0x1,0x1,};
+      jj_la1_2 = new int[] {0x0,0x4,0x0,0x0,0x0,0x0,0x3,0x0,0x0,0x3,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x3,0x0,0x0,0x0,0x0,0x0,0x0,0x3,0x3,0x3,0x3,0x0,0x3,0x3,0x0,0x0,0x0,0x0,0x3,0x3,};
    }
   final private JJCalls[] jj_2_rtns = new JJCalls[1];
   private boolean jj_rescan = false;
@@ -1120,7 +1113,7 @@ public class Parser implements ParserConstants {
     token = new Token();
     jj_ntk = -1;
     jj_gen = 0;
-    for (int i = 0; i < 40; i++) jj_la1[i] = -1;
+    for (int i = 0; i < 39; i++) jj_la1[i] = -1;
     for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
   }
 
@@ -1133,7 +1126,7 @@ public class Parser implements ParserConstants {
     token = new Token();
     jj_ntk = -1;
     jj_gen = 0;
-    for (int i = 0; i < 40; i++) jj_la1[i] = -1;
+    for (int i = 0; i < 39; i++) jj_la1[i] = -1;
     for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
   }
 
@@ -1143,7 +1136,7 @@ public class Parser implements ParserConstants {
     token = new Token();
     jj_ntk = -1;
     jj_gen = 0;
-    for (int i = 0; i < 40; i++) jj_la1[i] = -1;
+    for (int i = 0; i < 39; i++) jj_la1[i] = -1;
     for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
   }
 
@@ -1153,7 +1146,7 @@ public class Parser implements ParserConstants {
     token = new Token();
     jj_ntk = -1;
     jj_gen = 0;
-    for (int i = 0; i < 40; i++) jj_la1[i] = -1;
+    for (int i = 0; i < 39; i++) jj_la1[i] = -1;
     for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
   }
 
@@ -1162,7 +1155,7 @@ public class Parser implements ParserConstants {
     token = new Token();
     jj_ntk = -1;
     jj_gen = 0;
-    for (int i = 0; i < 40; i++) jj_la1[i] = -1;
+    for (int i = 0; i < 39; i++) jj_la1[i] = -1;
     for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
   }
 
@@ -1171,7 +1164,7 @@ public class Parser implements ParserConstants {
     token = new Token();
     jj_ntk = -1;
     jj_gen = 0;
-    for (int i = 0; i < 40; i++) jj_la1[i] = -1;
+    for (int i = 0; i < 39; i++) jj_la1[i] = -1;
     for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
   }
 
@@ -1282,15 +1275,15 @@ public class Parser implements ParserConstants {
 
   public ParseException generateParseException() {
     jj_expentries.removeAllElements();
-    boolean[] la1tokens = new boolean[66];
-    for (int i = 0; i < 66; i++) {
+    boolean[] la1tokens = new boolean[67];
+    for (int i = 0; i < 67; i++) {
       la1tokens[i] = false;
     }
     if (jj_kind >= 0) {
       la1tokens[jj_kind] = true;
       jj_kind = -1;
     }
-    for (int i = 0; i < 40; i++) {
+    for (int i = 0; i < 39; i++) {
       if (jj_la1[i] == jj_gen) {
         for (int j = 0; j < 32; j++) {
           if ((jj_la1_0[i] & (1<<j)) != 0) {
@@ -1305,7 +1298,7 @@ public class Parser implements ParserConstants {
         }
       }
     }
-    for (int i = 0; i < 66; i++) {
+    for (int i = 0; i < 67; i++) {
       if (la1tokens[i]) {
         jj_expentry = new int[1];
         jj_expentry[0] = i;

+ 54 - 52
src/contrib/hbase/src/java/org/apache/hadoop/hbase/shell/generated/ParserConstants.java

@@ -12,58 +12,59 @@ public interface ParserConstants {
   int DESC = 10;
   int CREATE = 11;
   int DROP = 12;
-  int FS = 13;
-  int JAR = 14;
-  int EXIT = 15;
-  int INSERT = 16;
-  int INTO = 17;
-  int TABLE = 18;
-  int DELETE = 19;
-  int SELECT = 20;
-  int ENABLE = 21;
-  int DISABLE = 22;
-  int STARTING = 23;
-  int WHERE = 24;
-  int FROM = 25;
-  int ROW = 26;
-  int VALUES = 27;
-  int COLUMNFAMILIES = 28;
-  int TIMESTAMP = 29;
-  int NUM_VERSIONS = 30;
-  int LIMIT = 31;
-  int AND = 32;
-  int OR = 33;
-  int COMMA = 34;
-  int LPAREN = 35;
-  int RPAREN = 36;
-  int EQUALS = 37;
-  int LCOMP = 38;
-  int RCOMP = 39;
-  int NOT = 40;
-  int IN = 41;
-  int NOTEQUAL = 42;
-  int ASTERISK = 43;
-  int MAX_VERSIONS = 44;
-  int MAX_LENGTH = 45;
-  int COMPRESSION = 46;
-  int NONE = 47;
-  int BLOCK = 48;
-  int RECORD = 49;
-  int IN_MEMORY = 50;
-  int BLOOMFILTER = 51;
-  int COUNTING_BLOOMFILTER = 52;
-  int RETOUCHED_BLOOMFILTER = 53;
-  int VECTOR_SIZE = 54;
-  int NUM_HASH = 55;
-  int NUM_ENTRIES = 56;
-  int ADD = 57;
-  int CHANGE = 58;
-  int ID = 59;
-  int INTEGER_LITERAL = 60;
-  int FLOATING_POINT_LITERAL = 61;
-  int EXPONENT = 62;
-  int QUOTED_IDENTIFIER = 63;
-  int STRING_LITERAL = 64;
+  int TRUNCATE = 13;
+  int FS = 14;
+  int JAR = 15;
+  int EXIT = 16;
+  int INSERT = 17;
+  int INTO = 18;
+  int TABLE = 19;
+  int DELETE = 20;
+  int SELECT = 21;
+  int ENABLE = 22;
+  int DISABLE = 23;
+  int STARTING = 24;
+  int WHERE = 25;
+  int FROM = 26;
+  int ROW = 27;
+  int VALUES = 28;
+  int COLUMNFAMILIES = 29;
+  int TIMESTAMP = 30;
+  int NUM_VERSIONS = 31;
+  int LIMIT = 32;
+  int AND = 33;
+  int OR = 34;
+  int COMMA = 35;
+  int LPAREN = 36;
+  int RPAREN = 37;
+  int EQUALS = 38;
+  int LCOMP = 39;
+  int RCOMP = 40;
+  int NOT = 41;
+  int IN = 42;
+  int NOTEQUAL = 43;
+  int ASTERISK = 44;
+  int MAX_VERSIONS = 45;
+  int MAX_LENGTH = 46;
+  int COMPRESSION = 47;
+  int NONE = 48;
+  int BLOCK = 49;
+  int RECORD = 50;
+  int IN_MEMORY = 51;
+  int BLOOMFILTER = 52;
+  int COUNTING_BLOOMFILTER = 53;
+  int RETOUCHED_BLOOMFILTER = 54;
+  int VECTOR_SIZE = 55;
+  int NUM_HASH = 56;
+  int NUM_ENTRIES = 57;
+  int ADD = 58;
+  int CHANGE = 59;
+  int ID = 60;
+  int INTEGER_LITERAL = 61;
+  int FLOATING_POINT_LITERAL = 62;
+  int EXPONENT = 63;
+  int QUOTED_IDENTIFIER = 64;
+  int STRING_LITERAL = 65;
 
   int DEFAULT = 0;
 
@@ -81,6 +82,7 @@ public interface ParserConstants {
     "\"desc\"",
     "\"create\"",
     "\"drop\"",
+    "\"truncate\"",
     "\"fs\"",
     "\"jar\"",
     "\"exit\"",

File diff suppressed because it is too large
+ 258 - 256
src/contrib/hbase/src/java/org/apache/hadoop/hbase/shell/generated/ParserTokenManager.java


Some files were not shown because too many files changed in this diff