[
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)