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

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_r137937945
  
    --- Diff: 
exec/java-exec/src/test/java/org/apache/drill/exec/testing/TestPauseInjection.java
 ---
    @@ -150,66 +150,61 @@ public void pauseOnSpecificBit() {
         final ZookeeperHelper zkHelper = new ZookeeperHelper();
         zkHelper.startZookeeper(1);
     
    -    // Creating two drillbits
    -    final Drillbit drillbit1, drillbit2;
    -    final DrillConfig drillConfig = zkHelper.getConfig();
         try {
    -      drillbit1 = Drillbit.start(drillConfig, remoteServiceSet);
    -      drillbit2 = Drillbit.start(drillConfig, remoteServiceSet);
    -    } catch (final DrillbitStartupException e) {
    -      throw new RuntimeException("Failed to start two drillbits.", e);
    -    }
    -
    -    final DrillbitContext drillbitContext1 = drillbit1.getContext();
    -    final DrillbitContext drillbitContext2 = drillbit2.getContext();
    -
    -    final UserSession session = UserSession.Builder.newBuilder()
    -      .withCredentials(UserCredentials.newBuilder()
    -        .setUserName("foo")
    -        .build())
    -      .withUserProperties(UserProperties.getDefaultInstance())
    -      .withOptionManager(drillbitContext1.getOptionManager())
    -      .build();
    -
    -    final DrillbitEndpoint drillbitEndpoint1 = 
drillbitContext1.getEndpoint();
    -    final String controls = Controls.newBuilder()
    -      .addPauseOnBit(DummyClass.class, DummyClass.PAUSES, 
drillbitEndpoint1)
    -      .build();
    -
    -    ControlsInjectionUtil.setControls(session, controls);
    -
    -    {
    -      final long expectedDuration = 1000L;
    -      final ExtendedLatch trigger = new ExtendedLatch(1);
    -      final Pointer<Exception> ex = new Pointer<>();
    -      final QueryContext queryContext = new QueryContext(session, 
drillbitContext1, QueryId.getDefaultInstance());
    -      (new ResumingThread(queryContext, trigger, ex, 
expectedDuration)).start();
    -
    -      // test that the pause happens
    -      final DummyClass dummyClass = new DummyClass(queryContext, trigger);
    -      final long actualDuration = dummyClass.pauses();
    -      assertTrue(String.format("Test should stop for at least %d 
milliseconds.", expectedDuration),
    -        expectedDuration <= actualDuration);
    -      assertTrue("No exception should be thrown.", ex.value == null);
    +      // Creating two drillbits
    +      final Drillbit drillbit1, drillbit2;
    +      final DrillConfig drillConfig = zkHelper.getConfig();
           try {
    -        queryContext.close();
    -      } catch (final Exception e) {
    -        fail("Failed to close query context: " + e);
    +        drillbit1 = Drillbit.start(drillConfig, remoteServiceSet);
    +        drillbit2 = Drillbit.start(drillConfig, remoteServiceSet);
    +      } catch (final DrillbitStartupException e) {
    +        throw new RuntimeException("Failed to start two drillbits.", e);
           }
    -    }
     
    -    {
    -      final ExtendedLatch trigger = new ExtendedLatch(1);
    -      final QueryContext queryContext = new QueryContext(session, 
drillbitContext2, QueryId.getDefaultInstance());
    +      final DrillbitContext drillbitContext1 = drillbit1.getContext();
    +      final DrillbitContext drillbitContext2 = drillbit2.getContext();
    +
    +      final UserSession session = 
UserSession.Builder.newBuilder().withCredentials(UserCredentials.newBuilder().setUserName("foo").build()).withUserProperties(UserProperties.getDefaultInstance()).withOptionManager(drillbitContext1.getOptionManager()).build();
    --- End diff --
    
    Same issue of one big line vs. multi-line.


> 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