diff --git a/CHANGES.txt b/CHANGES.txt
index 2ec7d315597..7598382613f 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -48,13 +48,18 @@ Trunk (unreleased changes)
HADOOP-2176 Htable.deleteAll documentation is ambiguous
HADOOP-2139 (phase 1) Increase parallelism in region servers.
HADOOP-2267 [Hbase Shell] Change the prompt's title from 'hbase' to 'hql'.
+ (Edward Yoon via Stack)
HADOOP-2139 (phase 2) Make region server more event driven
HADOOP-2289 Useless efforts of looking for the non-existant table in select
command.
+ (Edward Yoon via Stack)
HADOOP-2257 Show a total of all requests and regions on the web ui
+ (Paul Saab via Stack)
HADOOP-2261 HTable.abort no longer throws exception if there is no active update.
HADOOP-2287 Make hbase unit tests take less time to complete.
HADOOP-2262 Retry n times instead of n**2 times.
+ HADOOP-1608 Relational Algrebra Operators
+ (Edward Yoon via Stack)
Release 0.15.1
Branch 0.15
diff --git a/build.xml b/build.xml
index 6ed7fcf3be2..67f1aab183c 100644
--- a/build.xml
+++ b/build.xml
@@ -69,11 +69,17 @@
+
+
diff --git a/src/java/org/apache/hadoop/hbase/mapred/GroupingTableMap.java b/src/java/org/apache/hadoop/hbase/mapred/GroupingTableMap.java
index fbc0b182a5c..2472cff5175 100644
--- a/src/java/org/apache/hadoop/hbase/mapred/GroupingTableMap.java
+++ b/src/java/org/apache/hadoop/hbase/mapred/GroupingTableMap.java
@@ -47,7 +47,7 @@ public class GroupingTableMap extends TableMap {
public static final String GROUP_COLUMNS =
"hbase.mapred.groupingtablemap.columns";
- private Text[] m_columns;
+ protected Text[] m_columns;
/** default constructor */
public GroupingTableMap() {
diff --git a/src/java/org/apache/hadoop/hbase/shell/BasicCommand.java b/src/java/org/apache/hadoop/hbase/shell/BasicCommand.java
index 2ccb911c2bf..51929a26f8b 100644
--- a/src/java/org/apache/hadoop/hbase/shell/BasicCommand.java
+++ b/src/java/org/apache/hadoop/hbase/shell/BasicCommand.java
@@ -69,7 +69,7 @@ public abstract class BasicCommand implements Command, CommandFactory {
* at the end of the column name.
*/
protected String appendDelimiter(String column) {
- return (!column.endsWith(FAMILY_INDICATOR))?
+ return (!column.endsWith(FAMILY_INDICATOR) && column.indexOf(FAMILY_INDICATOR) == -1)?
column + FAMILY_INDICATOR: column;
}
diff --git a/src/java/org/apache/hadoop/hbase/shell/HBaseShell.jj b/src/java/org/apache/hadoop/hbase/shell/HBaseShell.jj
index 71f1e03e297..3d1759079be 100644
--- a/src/java/org/apache/hadoop/hbase/shell/HBaseShell.jj
+++ b/src/java/org/apache/hadoop/hbase/shell/HBaseShell.jj
@@ -33,6 +33,8 @@ import java.util.HashMap;
import java.io.StringReader;
import java.io.Reader;
import java.io.Writer;
+import java.net.URLEncoder;
+import java.io.UnsupportedEncodingException;
import org.apache.hadoop.hbase.shell.*;
@@ -43,6 +45,7 @@ public class Parser {
private String QueryString;
private TableFormatter formatter;
private Writer out;
+ private String secondR;
public Parser(final String query, final Writer o, final TableFormatter f) {
this((Reader)(new StringReader(query)));
@@ -102,7 +105,11 @@ TOKEN: /** for HQL statements */
|
|
|
- | ">
+ | ">
+ |
+ |
+ |
+ |
|
|
|
@@ -121,9 +128,16 @@ TOKEN: /** for HQL statements */
|
}
+TOKEN :
+{
+
+ |
+ |
+}
+
TOKEN : /** Literals */
{
-
+
|
| )?
@@ -144,7 +158,10 @@ Command terminatedCommand() :
Command statement = null;
}
{
- ([statement = cmdStatement()] ";" | )
+ (
+ [statement = cmdStatement()] ";" |
+ )
+
{
return statement;
}
@@ -171,6 +188,8 @@ Command cmdStatement() :
| cmd = clearCommand()
| cmd = fsCommand()
| cmd = jarCommand()
+ | cmd = substituteCommand()
+ | cmd = saveCommand()
)
{
return cmd;
@@ -245,6 +264,8 @@ HelpCommand helpCommand() :
| t=
| t=
| t=
+ | t=
+ | t=
| t=
) { argument = t.image.toString(); }
]
@@ -263,7 +284,7 @@ ShowCommand showCommand() :
{
[
- argument = Identifier()
+ argument = identifier()
]
{
show.setArgument(argument);
@@ -278,7 +299,7 @@ DescCommand descCommand() :
}
{
( | )
- argument = Identifier()
+ argument = identifier()
{
desc.setArgument(argument);
return desc;
@@ -360,14 +381,14 @@ CreateCommand createCommand() :
{
- table = Identifier()
+ table = identifier()
{
createCommand.setTable(table);
}
- column = Identifier()
+ column = identifier()
columnSpec = ColumnSpec()
{
createCommand.addColumnSpec(column, columnSpec);
@@ -375,7 +396,7 @@ CreateCommand createCommand() :
(
- column = Identifier()
+ column = identifier()
columnSpec = ColumnSpec()
{
createCommand.addColumnSpec(column, columnSpec);
@@ -395,12 +416,12 @@ AlterCommand alterCommand() :
}
{
- table = Identifier()
+ table = identifier()
{ alterCommand.setTable(table); }
(
LOOKAHEAD(2)
- column = Identifier() columnSpec = ColumnSpec()
+ column = identifier() columnSpec = ColumnSpec()
{
alterCommand.setOperationType(AlterCommand.OperationType.ADD);
alterCommand.addColumnSpec(column, columnSpec);
@@ -412,14 +433,14 @@ AlterCommand alterCommand() :
alterCommand.setOperationType(AlterCommand.OperationType.ADD);
}
- column = Identifier() columnSpec = ColumnSpec()
+ column = identifier() columnSpec = ColumnSpec()
{
alterCommand.addColumnSpec(column, columnSpec);
}
(
- column = Identifier()
+ column = identifier()
columnSpec = ColumnSpec()
{
alterCommand.addColumnSpec(column, columnSpec);
@@ -427,13 +448,13 @@ AlterCommand alterCommand() :
)*
|
- column = Identifier()
+ column = identifier()
{
alterCommand.setOperationType(AlterCommand.OperationType.DROP);
alterCommand.setColumn(column);
}
|
- column = Identifier() columnSpec = ColumnSpec()
+ column = identifier() columnSpec = ColumnSpec()
{
alterCommand.setOperationType(AlterCommand.OperationType.CHANGE);
alterCommand.addColumnSpec(column, columnSpec);
@@ -450,7 +471,7 @@ DropCommand dropCommand() :
{
- tableList = TableList()
+ tableList = tableList()
{
drop.setTableList(tableList);
return drop;
@@ -468,16 +489,15 @@ InsertCommand insertCommand() :
{
- table = Identifier()
+ table = identifier()
{
in.setTable(table);
}
-
columnfamilies = getColumns()
{
in.setColumnfamilies(columnfamilies);
}
-
+
values = getLiteralValues()
{
in.setValues(values);
@@ -502,13 +522,13 @@ DeleteCommand deleteCommand() :
}
{
- columnList = ColumnList()
+ columnList = columnList()
{
deleteCommand.setColumnList(columnList);
}
- table = Identifier()
+ table = identifier()
{
deleteCommand.setTable(table);
}
@@ -534,9 +554,9 @@ SelectCommand selectCommand() :
}
{