Class PauseInjection

java.lang.Object
org.apache.drill.exec.testing.Injection
org.apache.drill.exec.testing.PauseInjection

public class PauseInjection extends Injection
Injection for a single pause. Pause indefinitely until signalled. This class is used internally for tracking injected pauses. Note that pauses can be fired only once; nFire field is ignored. These pauses are specified via ExecConstants.DRILLBIT_CONTROL_INJECTIONS session option. After the pauses are set, the user sends another signal to unpause all the pauses. This triggers the Foreman to 1) unpause all pauses in QueryContext, and 2) send an unpause signal to all fragments, each of which unpauses all pauses in FragmentContext.
  • Method Details

    • pause

      public void pause()
      Pause indefinitely, unless a duration exists
    • interruptiblePause

      public void interruptiblePause() throws InterruptedException
      Throws:
      InterruptedException
    • unpause

      public void unpause()