-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/29484/
-----------------------------------------------------------

(Updated Dec. 31, 2014, 6:45 a.m.)


Review request for lens and Rajat Khandelwal.


Bugs: LENS-179
    https://issues.apache.org/jira/browse/LENS-179


Repository: lens


Description
-------

Gets the cause of the explain failure and fails if setting plan did not pass 
for any driver


Diffs
-----

  lens-server-api/pom.xml 7e1fd91 
  
lens-server-api/src/main/java/org/apache/lens/server/api/query/DriverSelectorQueryContext.java
 5dab13b 
  lens-server-api/src/main/java/org/apache/lens/server/api/util/LensUtil.java 
PRE-CREATION 
  
lens-server-api/src/test/java/org/apache/lens/server/api/util/TestLensUtil.java 
PRE-CREATION 
  lens-server/src/test/java/org/apache/lens/server/query/TestQueryService.java 
7edc3bc 

Diff: https://reviews.apache.org/r/29484/diff/


Testing (updated)
-------

Updated unit test to assert for error message. 

Did more testing with multiple drivers. here is an error reported now :

lens-shell>query explain cube select substr(id) from table
Explain FAILED:
 Driver :org.apache.lens.driver.jdbc.JDBCDriver Cause :unexpected token: )
 Driver :org.apache.lens.driver.hive.HiveDriver Cause :Error while compiling 
statement: FAILED: SemanticException [Error 10014]: Line 1:24 Wrong arguments 
'id': No matching method for class org.apache.hadoop.hive.ql.udf.UDFSubstr with 
(int). Possible choices: _FUNC_(binary, int)  _FUNC_(binary, int, int)  
_FUNC_(string, int)  _FUNC_(string, int, int)  
lens-shell>query explain cube select nocol from table
Explain FAILED:No driver accepted the query, because Could not find the table 
containing column: nocol
lens-shell>query explain  <query with invalid fuction>
Explain FAILED:Error while compiling statement: FAILED: SemanticException 
[Error 10011]: Line 1:3662 Invalid function 'invalidfunc'
lens-shell>


Thanks,

Amareshwari Sriramadasu

Reply via email to