[
https://issues.apache.org/jira/browse/LENS-743?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15532095#comment-15532095
]
Rajat Khandelwal commented on LENS-743:
---------------------------------------
More changes:
h4. Query API changes
Details api will return all attempts. Status api will return current attempt's
status. In case of retries and status being zero, Progress message should help
users understand that their query is being retried.
h4. Unification of Drivers
Common functionality of Drivers has been pulled out from individual
implementations to AbstractLensDriver.
* Each driver implemented configure, in which:
** Added its own resource file
** Set configuration based on last step, which can be returned in getConf
Now, both these steps are moved to AbstractLensDriver
* Each Driver initialized its own query launching constraints and waiting query
selection policies. This is also moved to Abstract LensDriver
* In line with these, initialization of retry policy decider is also done in
AbstractLensDriver
* A subclass of Configuration has been added for driver configuration. This
allows for flexible and unifiable properties for the above things. I'll explain
with an example. For reading retry policy, the driver will first check
"lens.driver.driver_type.retry.policy" key. If that's not present, it'll look
for "lens.driver.retry.policy". If that's also not there, it'll check for
"retry.policy". This change allows us to get rid of duplicate properties like
{"lens.driver.hive.query.launching.constraint.factories" and
"lens.driver.jdbc.query.launching.constraint.factories"} and allow us to use
just "query.launching.constraint.factories". This change doesn't force the
move, it just facilitates it. So backward compatibility is maintained. Another
upside is, that now any new driver has these things readily available with a
configuration and no code.
h4. Query Events
Query Events have been logically grouped into a module.
h4. Transaction semantics in finished queries
Finished queries are inserted by
* turn autocommit off
* insert query
* insert attempts
* commit.
This change renders LENS-1308 moot.
> Query failure retries for transient errors
> ------------------------------------------
>
> Key: LENS-743
> URL: https://issues.apache.org/jira/browse/LENS-743
> Project: Apache Lens
> Issue Type: Improvement
> Components: server
> Reporter: Amareshwari Sriramadasu
> Assignee: Rajat Khandelwal
> Labels: gsoc2016, java
>
> 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.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)