Hi, I was testing spark to read data from hive using HiveContext. I got the following error, when I used a simple query with constants in predicates.
I am using spark 1.3*. *Anyone encountered error like this ?? *Error:* Exception in thread "main" org.apache.spark.sql.AnalysisException: Unsupported language features in query: SELECT * from test_table where daily_partition='20150101' TOK_QUERY 1, 0,20, 81 TOK_FROM 1, 10,14, 81 TOK_TABREF 1, 12,14, 81 TOK_TABNAME 1, 12,14, 81 everest_marts_test 1, 12,12, 81 voice_cdr 1, 14,14, 100 TOK_INSERT 0, -1,-1, 0 TOK_DESTINATION 0, -1,-1, 0 TOK_DIR 0, -1,-1, 0 TOK_TMP_FILE 0, -1,-1, 0 TOK_SELECT 1, 0,8, 7 TOK_SELEXPR 1, 2,2, 7 TOK_TABLE_OR_COL 1, 2,2, 7 callingpartynumber 1, 2,2, 7 TOK_SELEXPR 1, 4,4, 26 TOK_TABLE_OR_COL 1, 4,4, 26 calledpartynumber 1, 4,4, 26 TOK_SELEXPR 1, 6,6, 44 TOK_TABLE_OR_COL 1, 6,6, 44 chargingtime 1, 6,6, 44 TOK_SELEXPR 1, 8,8, 57 TOK_TABLE_OR_COL 1, 8,8, 57 call_direction_key 1, 8,8, 57 TOK_WHERE 1, 16,20, 131 = 1, 18,20, 131 TOK_TABLE_OR_COL 1, 18,18, 116 daily_partition 1, 18,18, 116 '20150101' 1, 20,20, 132 scala.NotImplementedError: No parse rules for ASTNode type: 294, text: '20150101' : '20150101' 1, 20,20, 132 " + org.apache.spark.sql.hive.HiveQl$.nodeToExpr(HiveQl.scala:1261) ; at org.apache.spark.sql.hive.HiveQl$.createPlan(HiveQl.scala:261) at org.apache.spark.sql.hive.ExtendedHiveQlParser$$anonfun$ hiveQl$1.apply(ExtendedHiveQlParser.scala:41) at org.apache.spark.sql.hive.ExtendedHiveQlParser$$anonfun$ hiveQl$1.apply(ExtendedHiveQlParser.scala:40) at scala.util.parsing.combinator.Parsers$Success.map(Parsers.scala:136) at scala.util.parsing.combinator.Parsers$Success.map(Parsers.scala:135) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1. apply(Parsers.scala:242) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1. apply(Parsers.scala:242) at scala.util.parsing.combinator.Parsers$$anon$3.apply(Parsers. scala:222) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$ append$1$$anonfun$apply$2.apply(Parsers.scala:254) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$ append$1$$anonfun$apply$2.apply(Parsers.scala:254) at scala.util.parsing.combinator.Parsers$Failure.append( Parsers.scala:202) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$ append$1.apply(Parsers.scala:254) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$ append$1.apply(Parsers.scala:254) at scala.util.parsing.combinator.Parsers$$anon$3.apply(Parsers. scala:222) at scala.util.parsing.combinator.Parsers$$anon$2$$anonfun$ apply$14.apply(Parsers.scala:891) at scala.util.parsing.combinator.Parsers$$anon$2$$anonfun$ apply$14.apply(Parsers.scala:891) at scala.util.DynamicVariable.withValue(DynamicVariable.scala:57) at scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers. scala:890) at scala.util.parsing.combinator.PackratParsers$$anon$1.apply( PackratParsers.scala:110) at org.apache.spark.sql.catalyst.AbstractSparkSQLParser.apply( AbstractSparkSQLParser.scala:38) at org.apache.spark.sql.hive.HiveQl$$anonfun$3.apply(HiveQl.scala:138) at org.apache.spark.sql.hive.HiveQl$$anonfun$3.apply(HiveQl.scala:138) at org.apache.spark.sql.SparkSQLParser$$anonfun$org$apache$spark$sql$ SparkSQLParser$$others$1.apply(SparkSQLParser.scala:96) at org.apache.spark.sql.SparkSQLParser$$anonfun$org$apache$spark$sql$ SparkSQLParser$$others$1.apply(SparkSQLParser.scala:95) at scala.util.parsing.combinator.Parsers$Success.map(Parsers.scala:136) at scala.util.parsing.combinator.Parsers$Success.map(Parsers.scala:135) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1. apply(Parsers.scala:242) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1. apply(Parsers.scala:242) at scala.util.parsing.combinator.Parsers$$anon$3.apply(Parsers. scala:222) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$ append$1$$anonfun$apply$2.apply(Parsers.scala:254) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$ append$1$$anonfun$apply$2.apply(Parsers.scala:254) at scala.util.parsing.combinator.Parsers$Failure.append( Parsers.scala:202) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$ append$1.apply(Parsers.scala:254) at scala.util.parsing.combinator.Parsers$Parser$$anonfun$ append$1.apply(Parsers.scala:254) at scala.util.parsing.combinator.Parsers$$anon$3.apply(Parsers. scala:222) at scala.util.parsing.combinator.Parsers$$anon$2$$anonfun$ apply$14.apply(Parsers.scala:891) at scala.util.parsing.combinator.Parsers$$anon$2$$anonfun$ apply$14.apply(Parsers.scala:891) at scala.util.DynamicVariable.withValue(DynamicVariable.scala:57) at scala.util.parsing.combinator.Parsers$$anon$2.apply(Parsers. scala:890) at scala.util.parsing.combinator.PackratParsers$$anon$1.apply( PackratParsers.scala:110) at org.apache.spark.sql.catalyst.AbstractSparkSQLParser.apply( AbstractSparkSQLParser.scala:38) at org.apache.spark.sql.hive.HiveQl$.parseSql(HiveQl.scala:234) at org.apache.spark.sql.hive.HiveContext$$anonfun$sql$1. apply(HiveContext.scala:92) at org.apache.spark.sql.hive.HiveContext$$anonfun$sql$1. apply(HiveContext.scala:92) at scala.Option.getOrElse(Option.scala:120) at org.apache.spark.sql.hive.HiveContext.sql(HiveContext.scala:92) at com.xoanon.spark.hive.HiveSelectTest.main(HiveSelectTest.java:22) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke( NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke( DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$ deploy$SparkSubmit$$runMain(SparkSubmit.scala:569) at org.apache.spark.deploy.SparkSubmit$.doRunMain$1( SparkSubmit.scala:166) at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:189) at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:110) at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)