diff --git cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java index 344606c..d5f1b00 100644 --- cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java +++ cli/src/java/org/apache/hadoop/hive/cli/CliDriver.java @@ -211,7 +211,10 @@ public class CliDriver { + errMsg); } } - } else { // local mode + } else if(tokens.length>2 && "select".equals(tokens[0]) && tokens[1].startsWith("*") && tokens[1].length()>1){ + console.printError("FAILED: Parse Error: mismatched input '"+tokens[1].substring(1, tokens[1].length()-0) +"' in '"+cmd_trimmed+"'"); + ret = 1; + }else { // local mode CommandProcessor proc = CommandProcessorFactory.get(tokens[0], (HiveConf) conf); ret = processLocalCmd(cmd, proc, ss); } diff --git ql/src/test/queries/clientnegative/select_syntax.q ql/src/test/queries/clientnegative/select_syntax.q new file mode 100644 index 0000000..2eccc32 --- /dev/null +++ ql/src/test/queries/clientnegative/select_syntax.q @@ -0,0 +1 @@ +select *ff from src LIMIT 1; diff --git ql/src/test/results/clientnegative/select_syntax.q.out ql/src/test/results/clientnegative/select_syntax.q.out new file mode 100644 index 0000000..0f34038 --- /dev/null +++ ql/src/test/results/clientnegative/select_syntax.q.out @@ -0,0 +1 @@ +FAILED: Parse Error: mismatched input 'ff' in 'select *ff from src LIMIT 1'