> On Sept. 30, 2016, 12:16 p.m., Amareshwari Sriramadasu wrote: > > lens-server-api/src/main/java/org/apache/lens/server/api/driver/AbstractLensDriver.java, > > lines 76-77 > > <https://reviews.apache.org/r/52088/diff/6/?file=1514806#file1514806line76> > > > > This is enforcing drivertype in the file names. This will be a problem > > with -default.xml files, if people create driver type to be different than > > whats expected to be. > > > > Instead you can try using driver.getClass().getName().toLowercase() ? > > Rajat Khandelwal wrote: > I'm fine with either, but unable to see the merit in using one above the > other.
I changed it to using class name. But there is a slight inconsistency. Now, if drivers are configured like "mockHive:org.apache.lens.driver.hive.HiveDriver", then the `configure` method looks for `hivedriver-site.xml` instead of `mockhivedriver-site.xml`, which is fine. But the code that I added for unification of properties does the other thing. e.g. for `retry.policy`, first candidate is `lens.driver.<driverType>.retry.policy`, followed by `lens.driver.retry.policy`, followed by `retry.policy`. Now, driverType is `mockHive`, so basically it's looking for `lens.driver.mockHive.retry.policy` inside a file named `hivedriver-site.xml`. While I think that it should instead look for `lens.driver.hive.retry.policy`, but now, the only way to extract `hive` is through getting classname. I've changed the logic to now check 4 candidates instead of 3 as mentioned in the above paragraph. The new candidate now be `lens.driver.<driverClassType>.retry.policy`, and it'll be checked after `lens.driver.<driverType>.retry.policy`. - Rajat ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/52088/#review150991 ----------------------------------------------------------- On Oct. 7, 2016, 4:51 p.m., Rajat Khandelwal wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/52088/ > ----------------------------------------------------------- > > (Updated Oct. 7, 2016, 4:51 p.m.) > > > Review request for lens. > > > Bugs: LENS-743 > https://issues.apache.org/jira/browse/LENS-743 > > > Repository: lens > > > Description > ------- > > There have to be retries for query failures for transient errors like network > errors (Hive server not reachable/ Metastore not reachable/ DB not > reachable). Retries should be available for each phase - submission, > execution, updating status, fetching results and formatting. > > Right now, any such failure results in marking query as failed. > > > Diffs > ----- > > checkstyle/src/main/resources/checkstyle.xml > 17e55ea1071c06c73e8bf387cd69a4444cca83bc > lens-api/src/main/java/org/apache/lens/api/query/FailedAttempt.java > PRE-CREATION > lens-api/src/main/java/org/apache/lens/api/query/LensQuery.java > 7d079a9ed99e3d4940d5f26370547683a6bba465 > lens-api/src/main/java/org/apache/lens/api/query/QueryStatus.java > daedbf9ea387cbde3ef39363c2beef3f96725223 > > lens-api/src/test/java/org/apache/lens/api/jaxb/YAMLToStringStrategyTest.java > 04d9ad6dee942c705b0cdf071f49f1305696da65 > > lens-api/src/test/resources/toString/org.apache.lens.api.query.LensQuery.xml > a681bca7fd6e46fe992901e04e0666625a8a3106 > > lens-api/src/test/resources/toString/org.apache.lens.api.query.QueryStatus.xml > 70f9c932efc090095273566eaa52d380a2f23842 > lens-driver-es/src/main/java/org/apache/lens/driver/es/ESDriver.java > fceabeae9217676774a6978212cbc9ee9ca120f7 > lens-driver-es/src/test/resources/hive-site.xml > e49c876289d5352203d2523ddb9134d745c197e5 > lens-driver-hive/src/main/java/org/apache/lens/driver/hive/HiveDriver.java > 0d8810f6b7dfd9fb0173a4be6966f1a561107066 > > lens-driver-hive/src/test/java/org/apache/lens/driver/hive/TestHiveDriver.java > daf01ac64616da72ee55c00f71c2c0aa33651ee4 > > lens-driver-hive/src/test/java/org/apache/lens/driver/hive/TestRemoteHiveDriver.java > 1acbb13c3a24c0e7b41d799db0d307c5acfa8c6b > lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/JDBCDriver.java > f805ec6ebccd18de3bfcd0f1ab8626f7330dd6f1 > > lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/JDBCDriverConfConstants.java > 3c34eb191966dff3ac3032eb79282336b5c6789b > > lens-driver-jdbc/src/main/java/org/apache/lens/driver/jdbc/MaxJDBCConnectionCheckConstraint.java > 82b56470e2de09f7c41d1226ea59cffdd8d26a26 > > lens-driver-jdbc/src/test/java/org/apache/lens/driver/jdbc/TestJdbcDriver.java > 6e9086f9e8dc302ad2171d7f5636a24cb79dcb50 > > lens-regression/src/main/java/org/apache/lens/regression/core/constants/DriverConfig.java > d80fba9aee91130b69a2a511d7f157c01a261ac4 > > lens-server-api/src/main/java/org/apache/lens/server/api/LensConfConstants.java > 8cf617b7181b9a305ea2c68f68c610f823ee75d7 > > lens-server-api/src/main/java/org/apache/lens/server/api/common/BackOffRetryHandler.java > 17bfba02244bca7141268ed12e4a41400e2bec82 > > lens-server-api/src/main/java/org/apache/lens/server/api/common/FailureContext.java > 70a34b0c0517ed3b7af46120906fb77ae57870ac > > lens-server-api/src/main/java/org/apache/lens/server/api/common/FibonacciExponentialBackOffRetryHandler.java > e7fb8ce0194803317aaa0e1c5f4e3e0fb6bbca8c > > lens-server-api/src/main/java/org/apache/lens/server/api/common/OperationRetryHandlerFactory.java > 88fbe43318315394873cabb9f5dd39f09f6c47f4 > > lens-server-api/src/main/java/org/apache/lens/server/api/driver/AbstractLensDriver.java > e4984798751d012f0a9d01980df833c206155546 > > lens-server-api/src/main/java/org/apache/lens/server/api/driver/DriverConfiguration.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/driver/DriverQueryStatus.java > 033f6777b4be7a1b6d6cdc350e42a94ade1acbca > > lens-server-api/src/main/java/org/apache/lens/server/api/driver/LensDriver.java > e472de0a452ffbbcb217503c260aa26fe7f6ed99 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/AbstractQueryContext.java > e160f58bfb45cffb05b9f6be19db3bc7605dde57 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/DriverSelectorQueryContext.java > 5ff59bd0da713651a7cc5261dbd18cd88e91fc76 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/FinishedLensQuery.java > b58fcf964cedb8dc302099ae9c806b06acafa2d3 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/PriorityChange.java > eaf3fee953e1efbcf151fc844a9441b74b84cc3e > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryAccepted.java > 8980b619c9feb86be326bf799fecc35c1579c763 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryCancelled.java > a473a47606df84e2b5b204478ad63e63e69b0c23 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryClosed.java > 3837087db6e51c1606573511bfc02b6108d1ef3d > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryContext.java > b584c6a6d414a6f0dac509e67c8944dbd2373325 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryEnded.java > e80da6d2a417e1274fb186153ec01615c2da565b > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryEvent.java > 81c53be905d015bd14c0a05de5c7a43f8a6c5d84 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryExecuted.java > af8c8ee062c4c43ae987cea7316a36d84215d389 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryFailed.java > bdffbc2f37bae7a59add1ee3823de87887483e5e > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryLaunched.java > 5fcdd73899e3d8c8368fdc42ff6cc9912323e5ee > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryQueued.java > 5f347ad0e751d9cfc6b647d57d0acc25fd8dee01 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryRejected.java > c4e60e3d72108bb556f6cd9a5887230b39d67a02 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueryRunning.java > 52aa50d60cd2c1c03a76351830de2942ee84687d > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QuerySuccess.java > 298fdbb297baff7328a7ec4308fa21189afdddc5 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/QueuePositionChange.java > 062e14e8e105ca29196324ff1a051874dd628d5c > > lens-server-api/src/main/java/org/apache/lens/server/api/query/StatusChange.java > 949ec20e4c89a39987306c1bda2863a3d1b390ae > > lens-server-api/src/main/java/org/apache/lens/server/api/query/StatusUpdateFailureContext.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/comparators/ChainedComparator.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/comparators/FIFOQueryComparator.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/comparators/MoreRetriesFirstComparator.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/comparators/QueryComparator.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/comparators/QueryCostComparator.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/comparators/QueryPriorityComparator.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/constraint/MaxConcurrentDriverQueriesConstraint.java > e0f1376d48457d53c5c9bafa673304df4b54cc50 > > lens-server-api/src/main/java/org/apache/lens/server/api/query/constraint/QueryLaunchingConstraint.java > 12d9562566e71477db3cf00e1e0ed84d43eeb6cc > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/PriorityChange.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryAccepted.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryCancelled.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryClosed.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryEnded.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryEvent.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryExecuted.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryFailed.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryLaunched.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryQueued.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryQueuedForRetry.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryRejected.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueryRunning.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QuerySuccess.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/QueuePositionChange.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/query/events/StatusChange.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/retry/BackOffRetryHandler.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/retry/ChainedRetryPolicyDecider.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/retry/DefaultRetryPolicyDecider.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/retry/FailureContext.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/retry/FibonacciExponentialBackOffRetryHandler.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/retry/ImmediateRetryHandler.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/retry/NoRetryHandler.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/retry/OperationRetryHandlerFactory.java > PRE-CREATION > > lens-server-api/src/main/java/org/apache/lens/server/api/retry/RetryPolicyDecider.java > PRE-CREATION > lens-server-api/src/main/java/org/apache/lens/server/api/util/LensUtil.java > 8261d8aa19eb26e0336846d32c5bcd2162ddcb14 > > lens-server-api/src/test/java/org/apache/lens/server/api/common/TestExponentialBackOffRetryHandler.java > 5f407af815c0e43c51d185a30cb0b639e7696af7 > > lens-server-api/src/test/java/org/apache/lens/server/api/driver/MockDriver.java > 3c18ac7767a6418a961aff560d62537f2eb66c96 > > lens-server-api/src/test/java/org/apache/lens/server/api/query/TestQueryContext.java > a530e9d65e2c84e674b9260aaffbb68a0cbf2f94 > > lens-server-api/src/test/java/org/apache/lens/server/api/query/comparators/ChainedComparatorTest.java > PRE-CREATION > > lens-server-api/src/test/java/org/apache/lens/server/api/query/constraint/MaxConcurrentDriverQueriesConstraintTest.java > 122409b72cc789d11d39b6bc7c908f0d08a6e66a > > lens-server-api/src/test/java/org/apache/lens/server/api/retry/TestExponentialBackOffRetryHandler.java > PRE-CREATION > lens-server/pom.xml 6dea9a7be5181db1ff2f0f2e4407d4208fbb5464 > > lens-server/src/main/java/org/apache/lens/server/metrics/MetricsServiceImpl.java > b88c717d49f3e3c866cb875be987c069d07948fe > > lens-server/src/main/java/org/apache/lens/server/query/FIFOQueryComparator.java > 75c11460f7a0c2c5a52d6fec5e5f4b763643f3a4 > lens-server/src/main/java/org/apache/lens/server/query/LensServerDAO.java > 0aada406963f7b421e8b9726a72abcd85c63ddd4 > lens-server/src/main/java/org/apache/lens/server/query/QueryComparator.java > 67dda6bf8a74dc4a21b7f4148e5e3af9a51721d0 > > lens-server/src/main/java/org/apache/lens/server/query/QueryCostComparator.java > 2702581fc88a560dbb420ec3a7de1cf442542bd7 > > lens-server/src/main/java/org/apache/lens/server/query/QueryEndHttpNotifier.java > 5d2ddbe76c30269dc7e72b766e216a34bd21591e > > lens-server/src/main/java/org/apache/lens/server/query/QueryEndNotifier.java > 91fddc9e1738b41cb7589b256a375e20655c0d67 > > lens-server/src/main/java/org/apache/lens/server/query/QueryEventHttpNotifier.java > f264603c03f3444d2d38e17be9f6b1fcd708d0bf > > lens-server/src/main/java/org/apache/lens/server/query/QueryExecutionServiceImpl.java > 87d7cb0d5036bd0de4361cc146404a7fee478bac > > lens-server/src/main/java/org/apache/lens/server/query/QueryExecutionStatisticsGenerator.java > 55cabe2e79d8e898a654c880e4f35621e144886f > > lens-server/src/main/java/org/apache/lens/server/query/QueryPriorityComparator.java > 2c6d904a5fd35d39b5339275013386ae7852bb73 > lens-server/src/main/java/org/apache/lens/server/query/ResultFormatter.java > 41cf33bc311d3375b3eaab26d9b85bcc112a4b42 > > lens-server/src/main/java/org/apache/lens/server/query/constraint/DefaultQueryLaunchingConstraintsChecker.java > 48291b94d35dfcf3dde6b3667b2aae28d81f9366 > > lens-server/src/main/java/org/apache/lens/server/query/constraint/RetryPolicyToConstraingAdapter.java > PRE-CREATION > > lens-server/src/main/java/org/apache/lens/server/query/constraint/TotalQueryCostCeilingConstraint.java > 0a8d4c357b61b42d4da7057df13e78e82669ad71 > lens-server/src/main/java/org/apache/lens/server/rewrite/RewriteUtil.java > 18c2f2c58196efe8faf3abc8bf7b25a1a96f86fc > > lens-server/src/main/java/org/apache/lens/server/scheduler/SchedulerQueryEventListener.java > 4192134af99258bbfa79f687b092aee48482e7f5 > > lens-server/src/main/java/org/apache/lens/server/scheduler/SchedulerServiceImpl.java > c683a2cfa8fb3c02ad65d38cdc21c42b1143b64f > > lens-server/src/test/java/org/apache/lens/server/query/QueryContextComparatorTest.java > 46adb7b9b4e53c6f8182d13c33ebf76647c37a27 > > lens-server/src/test/java/org/apache/lens/server/query/TestEventService.java > 526acccd6176f3369eb48da11f3b9c157528422d > lens-server/src/test/java/org/apache/lens/server/query/TestLensDAO.java > e620dc561774b396b6a498fb5b2e0f4001aaa46f > > lens-server/src/test/java/org/apache/lens/server/query/TestQueryConstraints.java > e649a753efde2b3c293394400016ea49e580a6f9 > > lens-server/src/test/java/org/apache/lens/server/query/TestQueryIndependenceFromSessionClose.java > bf4577c287d9e2d5da510ca75a06939599ba8621 > > lens-server/src/test/java/org/apache/lens/server/query/TestQueryNotifictaionResource.java > 3a3f2f150505e43a9f8c3f9f0ec9d7b431f1c0d0 > > lens-server/src/test/java/org/apache/lens/server/query/TestQueryService.java > 3f71aef9ca180d834538604925c71d1d87be8e26 > > lens-server/src/test/java/org/apache/lens/server/query/collect/QueryCollectUtil.java > 8b72c81554f06cf2115364fa66062572cd5aa957 > > lens-server/src/test/java/org/apache/lens/server/query/constraint/DefaultQueryLaunchingConstraintsCheckerTest.java > ab030cc83e459cc46344b5722b39d8023ce5a3c4 > > lens-server/src/test/java/org/apache/lens/server/query/constraint/ThreadSafeEstimatedQueryCollectionTest.java > d9727800c4397c7e00b396fead589965503ac52e > > lens-server/src/test/java/org/apache/lens/server/query/constraint/TotalQueryCostCeilingConstraintTest.java > 460190a7ef80d8ea591206d7793fe084bf799712 > > lens-server/src/test/java/org/apache/lens/server/query/retry/MockDriverForRetries.java > PRE-CREATION > > lens-server/src/test/java/org/apache/lens/server/query/retry/MockRetryPolicyDecider.java > PRE-CREATION > > lens-server/src/test/java/org/apache/lens/server/query/retry/QueryRetryTest.java > PRE-CREATION > > lens-server/src/test/java/org/apache/lens/server/query/retry/TestServerRetryPolicyDecider.java > PRE-CREATION > > lens-server/src/test/java/org/apache/lens/server/scheduler/util/SchedulerTestUtils.java > d50474a2efac68661882e87e01f0c0f80c2b6ab8 > > lens-server/src/test/resources/drivers/mock/single_failure/failing-query-driver-site.xml > PRE-CREATION > lens-server/src/test/resources/drivers/retry/double_failure/driver-site.xml > PRE-CREATION > lens-server/src/test/resources/drivers/retry/single_failure/driver-site.xml > PRE-CREATION > lens-server/src/test/resources/drivers/retry/triple_failure/driver-site.xml > PRE-CREATION > src/site/resources/images/querystate.png > 47062bfcbf7d01210c184281a5c4fe9dc8aa069c > > Diff: https://reviews.apache.org/r/52088/diff/ > > > Testing > ------- > > > File Attachments > ---------------- > > Screen Shot 2016-10-05 at 1.38.44 pm.png > > https://reviews.apache.org/media/uploaded/files/2016/10/05/b7b4e33f-7e57-46c2-aa55-9d4f1055b992__Screen_Shot_2016-10-05_at_1.38.44_pm.png > > > Thanks, > > Rajat Khandelwal > >