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

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

Github user laurentgo commented on a diff in the pull request:

    https://github.com/apache/drill/pull/1055#discussion_r154153939
  
    --- Diff: 
exec/java-exec/src/main/java/org/apache/drill/exec/testing/PauseInjection.java 
---
    @@ -44,14 +46,31 @@ private PauseInjection(@JsonProperty("address") final 
String address,
                              @JsonProperty("siteClass") final String siteClass,
                              @JsonProperty("desc") final String desc,
                              @JsonProperty("nSkip") final int nSkip) throws 
InjectionConfigurationException {
    -    super(address, port, siteClass, desc, nSkip, 1);
    +    //nFire is 1 since we will inject pauses only once
    +    //msPause is 0 (i.e. not time-bound)
    +    super(address, port, siteClass, desc, nSkip, 1, 0L);
    +  }
    +
    +  @JsonCreator // ensures instances are created only through JSON
    +  private PauseInjection(@JsonProperty("address") final String address,
    +                         @JsonProperty("port") final int port,
    +                         @JsonProperty("siteClass") final String siteClass,
    +                         @JsonProperty("desc") final String desc,
    +                         @JsonProperty("nSkip") final int nSkip,
    +                         @JsonProperty("msPause") final long msPause) 
throws InjectionConfigurationException {
    +    //nFire is 1 since we will inject pauses only once
    +    super(address, port, siteClass, desc, nSkip, 1, msPause);
       }
     
    -  public void pause() {
    +  public void pause() throws InterruptedException {
    --- End diff --
    
    I would not expose the interruption but handle it internally instead (by 
decreasing the latch counter)


> Support injection of time-bound pauses in server
> ------------------------------------------------
>
>                 Key: DRILL-5973
>                 URL: https://issues.apache.org/jira/browse/DRILL-5973
>             Project: Apache Drill
>          Issue Type: Improvement
>          Components: Tools, Build & Test
>    Affects Versions: 1.11.0
>            Reporter: Kunal Khatua
>            Assignee: Kunal Khatua
>             Fix For: 1.13.0
>
>
> While working on DRILL-3640 , when creating a unit test for a server-induced 
> timeout, the injecting a pause leaves the JUnit framework's DrillClient 
> without a handle to the query on the server. This is because we injected the 
> pause to occur before the server could send back a query ID, so the 
> DrillClient has no way to unpause the server.
> The workaround to support this unit test is to allow for injecting pauses 
> with a defined time-bound, after which the server would resume.



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

Reply via email to