[ 
https://issues.apache.org/jira/browse/DRILL-8314?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17609423#comment-17609423
 ] 

ASF GitHub Bot commented on DRILL-8314:
---------------------------------------

jnturton commented on code in PR #2655:
URL: https://github.com/apache/drill/pull/2655#discussion_r979823862


##########
exec/java-exec/src/main/java/org/apache/drill/exec/store/StoragePluginRegistry.java:
##########
@@ -34,12 +34,22 @@ public interface StoragePluginRegistry extends 
Iterable<Map.Entry<String, Storag
 
   @SuppressWarnings("serial")
   public static class PluginException extends Exception {
+
+    public final StoragePlugin plugin;

Review Comment:
   @vvysotskyi I added a reference to the plugin related to the exception so 
that when an exception is thrown from PlannerPhase#getStorageRules the calling 
code has a way to find _which_ plugin from the collection that it passed in was 
the one that failed. It needs to know that if it is to go on to disable that 
plugin. But there must be other ways of sharing that data with the caller if 
you think using the exception object is not a good choice...





> Add support for automatically retrying and disabling broken storage plugins
> ---------------------------------------------------------------------------
>
>                 Key: DRILL-8314
>                 URL: https://issues.apache.org/jira/browse/DRILL-8314
>             Project: Apache Drill
>          Issue Type: Improvement
>          Components: Storage - Other
>    Affects Versions: 1.20.2
>            Reporter: James Turton
>            Assignee: James Turton
>            Priority: Minor
>             Fix For: 2.0.0
>
>
> Enabled storage plugins may malfunction for different reasons, e.g. they have 
> been misconfigured or their remote data source has gone offline. Depending on 
> the plugin's implementation, this could cause it to fail to return optimizer 
> rules or register schemas. In some cases this can have a wider impact, e.g. 
> unconditioned queries against the info schema will fail if a single plugin is 
> failing in registerSchemas.
> Rather than us swallowing such errors and silently returning a subset of 
> results, this Jira proposes new features that allow firstly for the retrying 
> of attempts to get rules or schemas from a plugin and secondly for a plugin 
> to be automatically disabled after the configured maximum number of attempts 
> have failed. A broken plugin will still cause a query failure but the user 
> will be informed that the plugin has been disabled as a result. Knowing what 
> has just happened, the user can choose to reissue the query knowing that the 
> broken plugin is now disabled or they might choose to investigate the problem 
> affecting the broken plugin instead.
> These new features are optional and can be disabled using new SYSTEM options.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to