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

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

Github user paul-rogers commented on a diff in the pull request:

    https://github.com/apache/drill/pull/923#discussion_r137937858
  
    --- Diff: 
exec/java-exec/src/test/java/org/apache/drill/exec/physical/impl/join/TestMergeJoinAdvanced.java
 ---
    @@ -102,10 +103,11 @@ public void testFix2967() throws Exception {
           test("select * from dfs_test.`%s/join/j1` j1 left outer join 
dfs_test.`%s/join/j2` j2 on (j1.c_varchar = j2.c_varchar)",
             TEST_RES_PATH, TEST_RES_PATH);
         } finally {
    -      setSessionOption(PlannerSettings.BROADCAST.getOptionName(), 
String.valueOf(PlannerSettings.BROADCAST.getDefault().bool_val));
    -      setSessionOption(PlannerSettings.HASHJOIN.getOptionName(), 
String.valueOf(PlannerSettings.HASHJOIN.getDefault().bool_val));
    +      final OperatorFixture.TestOptionSet testOptionSet = new 
OperatorFixture.TestOptionSet();
    +      setSessionOption(PlannerSettings.BROADCAST.getOptionName(), 
String.valueOf(testOptionSet.getDefault(PlannerSettings.BROADCAST.getOptionName()).bool_val));
    --- End diff --
    
    No need to fix now but I wonder:
    
    * The `ClusterFixture` class has a method of form `setSystemOption(String 
name, Option value)` to avoid this kind of silly to/from String overhead. We 
might want to do the same for these "legacy" `BaseTestQuery` style tests.
    * But, here we are setting system options to their default value. Why? 
Isn't that already the value? If not, wouldn't clearing (deleting) the option 
value be better?
    * Or, has the test previously set a system option to other than the default 
value, and we are undoing that here? Seems it would be better to allow a test 
to say not to muck with the defaults. (Hard to do with `BaseTestQuery`, but 
there is a built-in provision for this in the `ClusterFixture`.)


> Support System/Session Internal Options And Additional Option System Fixes
> --------------------------------------------------------------------------
>
>                 Key: DRILL-5723
>                 URL: https://issues.apache.org/jira/browse/DRILL-5723
>             Project: Apache Drill
>          Issue Type: New Feature
>            Reporter: Timothy Farkas
>            Assignee: Timothy Farkas
>
> This is a feature proposed by [~ben-zvi].
> Currently all the options are accessible by the user in sys.options. We would 
> like to add internal options which can be altered, but are not visible in the 
> sys.options table. These internal options could be seen by another alias 
> select * from internal.options. The intention would be to put new options we 
> weren't comfortable with exposing to the end user in this table.
> After the options and their corresponding features are considered stable they 
> could be changed to appear in the sys.option table.
> A bunch of other fixes to the Option system have been clubbed into this:
> * OptionValidators no longer hold default values. Default values are 
> contained in the SystemOptionManager
> * Options have an OptionDefinition. The option definition includes:
>   * A validator
>   * Metadata about the options visibility, required permissions, and the 
> scope in which it can be set.
> * The Option Manager interface has been cleaned up so that a Type is not 
> required to be passed in in order to set and delete options



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to