> On July 9, 2015, 11:19 a.m., Amareshwari Sriramadasu wrote:
> > >> With the new design, estimate on native queries does no validation, just 
> > >> returns MAX_COST. 
> > 
> > Why are invalid native queries not failing any more? I see that as a 
> > regression in this patch. Also, whats the reason for returning MAX_COST?

I'm taking care of Failure of invalid queries in the next patch. 

About Max cost, the motivation is to encourage olap queries and discourage 
native queries. Native queries can be run directly from hive shell as well.


- Rajat


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


On July 9, 2015, 10:18 a.m., Rajat Khandelwal wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/35821/
> -----------------------------------------------------------
> 
> (Updated July 9, 2015, 10:18 a.m.)
> 
> 
> Review request for lens, Amareshwari Sriramadasu and Himanshu Gahlaut.
> 
> 
> Bugs: LENS-630
>     https://issues.apache.org/jira/browse/LENS-630
> 
> 
> Repository: lens
> 
> 
> Description
> -------
> 
> Along with this, we can add a new field in QueryCost to return the query cost 
> calculated by the implementation. normalizedQueryCost could be one name for 
> that field.
> 
> 
> Diffs
> -----
> 
>   lens-api/src/main/java/org/apache/lens/api/Addable.java PRE-CREATION 
>   lens-api/src/main/java/org/apache/lens/api/query/QueryCost.java 
> 1a37c20f408dac8d007e917a3b1107c96acb51f1 
>   lens-api/src/main/java/org/apache/lens/api/query/QueryCostType.java 
> PRE-CREATION 
>   lens-api/src/main/java/org/apache/lens/api/query/QueryPlan.java 
> a836b1e433b50e3137aba71ac8c8288ca7a2f5bf 
>   lens-api/src/main/java/org/apache/lens/api/query/QuerySubmitResult.java 
> 2177c7887ff7cae395f9ef1a8dcf1f1489bcf6ca 
>   lens-api/src/main/java/org/apache/lens/api/result/QueryCostTO.java 
> PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/FactPartition.java 
> 3465513c10a13fb062a6b64e5589862d3d0141dd 
>   lens-cube/src/main/java/org/apache/lens/cube/metadata/UpdatePeriod.java 
> 3c9268bc7f23687bd450cf01a44272df50a2df26 
>   
> lens-cube/src/main/java/org/apache/lens/cube/query/cost/FactPartitionBasedQueryCostCalculator.java
>  PRE-CREATION 
>   lens-cube/src/main/java/org/apache/lens/driver/cube/RewriterPlan.java 
> 841946d2cc8ef9f1a590acd1693404fbdf60ac49 
>   
> lens-cube/src/test/java/org/apache/lens/cube/metadata/TestFactPartition.java 
> PRE-CREATION 
>   
> lens-cube/src/test/java/org/apache/lens/cube/query/cost/TestFactPartitionBasedQueryCostCalculator.java
>  PRE-CREATION 
>   lens-driver-hive/src/main/java/org/apache/lens/driver/hive/HiveDriver.java 
> b7a3be72352cba201f7244822c08e59f298fc64c 
>   
> lens-driver-hive/src/main/java/org/apache/lens/driver/hive/HiveQueryPlan.java 
> b0a04dfc59e2301aac336a97fe52024c4ebf76df 
>   
> lens-driver-hive/src/main/java/org/apache/lens/driver/hive/priority/DurationBasedQueryPriorityDecider.java
>  bc1ec1c619f980d7a18314cb93d5438fc1d11321 
>   
> lens-driver-hive/src/test/java/org/apache/lens/driver/hive/TestHiveDriver.java
>  8355f29df831fad25348b51bd22b0cc45c968f76 
>   lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/JDBCDriver.java 
> bda6572adfcc4834197608fa43f68dbaabb2d852 
>   
> lens-driver-jdbc/src/test/java/org/apache/lens/driver/jdbc/TestJdbcDriver.java
>  be34164dd49b734b94fc2c121130613555402d50 
>   
> lens-regression/src/main/java/org/apache/lens/regression/core/helpers/QueryHelper.java
>  8957aefec894485fc3d1e26e3f3b4f79eb01915e 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/driver/DriverQueryPlan.java
>  51b12177a3b7c6db5beb4b98a892bc83cc94fcdf 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/driver/LensDriver.java
>  3dc4e734eac979d7bd8f94ee3cb4eb986d4d5081 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/driver/MinQueryCostSelector.java
>  43237f76a75e5c020534548bb9ec5e423e2b360c 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/priority/CostToPriorityRangeConf.java
>  97574b830cb4924e0eb9624f04dbce10fcaf4fdf 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/priority/QueryPriorityDecider.java
>  09a8ace5e4738b338ec241c83e297d071949a4bf 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/priority/RangeConf.java
>  75295ab711d986c3f6a0d33bd241fe0d3873bdd5 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/query/AbstractQueryContext.java
>  c398215f415c20b2bfcd3d743316f7300ac2baa1 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/query/DriverSelectorQueryContext.java
>  09452226337bbacb12216efd43f15a2b957c0cf4 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryExecutionService.java
>  3c0f7876d96e2f7dd9a0468ec94a7abcec41f819 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/query/cost/FactPartitionBasedQueryCost.java
>  PRE-CREATION 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/query/cost/QueryCost.java
>  PRE-CREATION 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/query/cost/QueryCostCalculator.java
>  PRE-CREATION 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/query/cost/QueryCostTOBuilder.java
>  PRE-CREATION 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/query/priority/CostRangePriorityDecider.java
>  PRE-CREATION 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/query/priority/CostToPriorityRangeConf.java
>  PRE-CREATION 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/query/priority/QueryPriorityDecider.java
>  PRE-CREATION 
>   
> lens-server-api/src/main/java/org/apache/lens/server/api/query/priority/RangeConf.java
>  PRE-CREATION 
>   
> lens-server-api/src/test/java/org/apache/lens/server/api/driver/MockDriver.java
>  4b80918f3d1cf9f3f683fbdb4d1a89bc55e4b0f9 
>   
> lens-server-api/src/test/java/org/apache/lens/server/api/driver/MockFailDriver.java
>  060a867c03d8509adf646282745ec30a9f3ac6e1 
>   
> lens-server-api/src/test/java/org/apache/lens/server/api/query/cost/TestFactPartitionBasedQueryCost.java
>  PRE-CREATION 
>   
> lens-server/src/main/java/org/apache/lens/server/query/QueryExecutionServiceImpl.java
>  429b26283afbd15a357b1529c2ca6767cca83691 
>   
> lens-server/src/main/java/org/apache/lens/server/query/QueryServiceResource.java
>  ec97b8df25f57a283d4d539d635c011cd06819d6 
>   
> lens-server/src/test/java/org/apache/lens/server/common/RestAPITestUtil.java 
> 2d20789f2f92ea1424fee35c9dc5c3ec39333f3d 
>   
> lens-server/src/test/java/org/apache/lens/server/query/QueryAPIErrorResponseTest.java
>  91e908139ca556d8611dff9eb109d9620a513352 
>   
> lens-server/src/test/java/org/apache/lens/server/query/TestQueryService.java 
> 17305e2e8f1680278e5d621fa2bc745795953bed 
> 
> Diff: https://reviews.apache.org/r/35821/diff/
> 
> 
> Testing
> -------
> 
> `QueryAPIErrorResponseTest.testErrorResponseWhenLensMultiCauseExceptionOccurs`
>  is failing. It relies on `estimate` failing for invalid native queries. e.g. 
> `select blah from nonexisting_table`. With the new design, estimate on native 
> queries does no validation, just returns MAX_COST. Since the test case 
> expects estimate to return 500 error response, it's failing. Initially I 
> thought calling explain instead of estimate would throw MultiCause Exception 
> but it doesn't. 
> 
> Currently I need a way to get Multi Cause Exception. 
> 
> All other tests pass.
> 
> 
> Thanks,
> 
> Rajat Khandelwal
> 
>

Reply via email to