com.facebook.presto.execution.QueryStateMachine.transitionToFinishing()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(12.6k)|赞(0)|评价(0)|浏览(55)

本文整理了Java中com.facebook.presto.execution.QueryStateMachine.transitionToFinishing方法的一些代码示例,展示了QueryStateMachine.transitionToFinishing的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QueryStateMachine.transitionToFinishing方法的具体详情如下:
包路径:com.facebook.presto.execution.QueryStateMachine
类名称:QueryStateMachine
方法名:transitionToFinishing

QueryStateMachine.transitionToFinishing介绍

暂无

代码示例

代码示例来源:origin: prestodb/presto

@Override
public void onSuccess(@Nullable Object result)
{
  stateMachine.transitionToFinishing();
}

代码示例来源:origin: prestodb/presto

@Test
public void testFinished()
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToFinishing());
  tryGetFutureValue(stateMachine.getStateChange(FINISHING), 2, SECONDS);
  assertFinalState(stateMachine, FINISHED);
}

代码示例来源:origin: prestodb/presto

private static void assertFinalState(QueryStateMachine stateMachine, QueryState expectedState, Exception expectedException)
{
  assertTrue(expectedState.isDone());
  assertState(stateMachine, expectedState, expectedException);
  assertFalse(stateMachine.transitionToPlanning());
  assertState(stateMachine, expectedState, expectedException);
  assertFalse(stateMachine.transitionToStarting());
  assertState(stateMachine, expectedState, expectedException);
  assertFalse(stateMachine.transitionToRunning());
  assertState(stateMachine, expectedState, expectedException);
  assertFalse(stateMachine.transitionToFinishing());
  assertState(stateMachine, expectedState, expectedException);
  assertFalse(stateMachine.transitionToFailed(FAILED_CAUSE));
  assertState(stateMachine, expectedState, expectedException);
  // attempt to fail with another exception, which will fail
  assertFalse(stateMachine.transitionToFailed(new IOException("failure after finish")));
  assertState(stateMachine, expectedState, expectedException);
}

代码示例来源:origin: prestodb/presto

@Test
public void testBasicStateChanges()
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertState(stateMachine, QUEUED);
  assertTrue(stateMachine.transitionToPlanning());
  assertState(stateMachine, PLANNING);
  assertTrue(stateMachine.transitionToStarting());
  assertState(stateMachine, STARTING);
  assertTrue(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  assertTrue(stateMachine.transitionToFinishing());
  tryGetFutureValue(stateMachine.getStateChange(FINISHING), 2, SECONDS);
  assertState(stateMachine, FINISHED);
}

代码示例来源:origin: prestodb/presto

@Test
public void testStateChangesWithResourceWaiting()
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertState(stateMachine, QUEUED);
  assertTrue(stateMachine.transitionToWaitingForResources());
  assertState(stateMachine, WAITING_FOR_RESOURCES);
  assertTrue(stateMachine.transitionToPlanning());
  assertState(stateMachine, PLANNING);
  assertTrue(stateMachine.transitionToStarting());
  assertState(stateMachine, STARTING);
  assertTrue(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  assertTrue(stateMachine.transitionToFinishing());
  tryGetFutureValue(stateMachine.getStateChange(FINISHING), 2, SECONDS);
  assertState(stateMachine, FINISHED);
}

代码示例来源:origin: prestodb/presto

rootStage.addStateChangeListener(state -> {
  if (state == FINISHED) {
    queryStateMachine.transitionToFinishing();

代码示例来源:origin: prestodb/presto

@Test
public void testRunning()
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  assertFalse(stateMachine.transitionToPlanning());
  assertState(stateMachine, RUNNING);
  assertFalse(stateMachine.transitionToStarting());
  assertState(stateMachine, RUNNING);
  assertFalse(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  assertTrue(stateMachine.transitionToFinishing());
  tryGetFutureValue(stateMachine.getStateChange(FINISHING), 2, SECONDS);
  assertState(stateMachine, FINISHED);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToRunning();
  assertTrue(stateMachine.transitionToFailed(FAILED_CAUSE));
  assertState(stateMachine, FAILED, FAILED_CAUSE);
}

代码示例来源:origin: prestodb/presto

@Test
public void testStarting()
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToStarting());
  assertState(stateMachine, STARTING);
  assertFalse(stateMachine.transitionToPlanning());
  assertState(stateMachine, STARTING);
  assertFalse(stateMachine.transitionToStarting());
  assertState(stateMachine, STARTING);
  assertTrue(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToStarting();
  assertTrue(stateMachine.transitionToFinishing());
  tryGetFutureValue(stateMachine.getStateChange(FINISHING), 2, SECONDS);
  assertState(stateMachine, FINISHED);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToStarting();
  assertTrue(stateMachine.transitionToFailed(FAILED_CAUSE));
  assertState(stateMachine, FAILED, FAILED_CAUSE);
}

代码示例来源:origin: prestodb/presto

@Test
public void testPlanning()
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToPlanning());
  assertState(stateMachine, PLANNING);
  assertFalse(stateMachine.transitionToPlanning());
  assertState(stateMachine, PLANNING);
  assertTrue(stateMachine.transitionToStarting());
  assertState(stateMachine, STARTING);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToPlanning();
  assertTrue(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToPlanning();
  assertTrue(stateMachine.transitionToFinishing());
  tryGetFutureValue(stateMachine.getStateChange(FINISHING), 2, SECONDS);
  assertState(stateMachine, FINISHED);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToPlanning();
  assertTrue(stateMachine.transitionToFailed(FAILED_CAUSE));
  assertState(stateMachine, FAILED, FAILED_CAUSE);
}

代码示例来源:origin: prestodb/presto

assertTrue(stateMachine.transitionToFinishing());
tryGetFutureValue(stateMachine.getStateChange(FINISHING), 2, SECONDS);
assertState(stateMachine, FINISHED);

代码示例来源:origin: prestodb/presto

@Test
public void testQueued()
{
  // all time before the first state transition is accounted to queueing
  assertAllTimeSpentInQueueing(QUEUED, queryStateMachine -> {});
  assertAllTimeSpentInQueueing(WAITING_FOR_RESOURCES, QueryStateMachine::transitionToWaitingForResources);
  assertAllTimeSpentInQueueing(PLANNING, QueryStateMachine::transitionToPlanning);
  assertAllTimeSpentInQueueing(STARTING, QueryStateMachine::transitionToStarting);
  assertAllTimeSpentInQueueing(RUNNING, QueryStateMachine::transitionToRunning);
  assertAllTimeSpentInQueueing(FINISHED, stateMachine -> {
    stateMachine.transitionToFinishing();
    tryGetFutureValue(stateMachine.getStateChange(FINISHING), 2, SECONDS);
  });
  assertAllTimeSpentInQueueing(FAILED, stateMachine -> stateMachine.transitionToFailed(FAILED_CAUSE));
}

代码示例来源:origin: uk.co.nichesolutions.presto/presto-main

@Override
public void start()
{
  try {
    // transition to running
    if (!stateMachine.transitionToRunning()) {
      // query already running or finished
      return;
    }
    CompletableFuture<?> future = task.execute(statement, transactionManager, metadata, accessControl, stateMachine);
    future.whenComplete((o, throwable) -> {
      if (throwable == null) {
        stateMachine.transitionToFinishing();
      }
      else {
        fail(throwable);
      }
    });
  }
  catch (Throwable e) {
    fail(e);
    if (!(e instanceof RuntimeException)) {
      throw Throwables.propagate(e);
    }
  }
}

代码示例来源:origin: uk.co.nichesolutions.presto/presto-main

@Test
public void testFinished()
    throws InterruptedException
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToFinishing());
  stateMachine.waitForStateChange(FINISHING, new Duration(2, TimeUnit.SECONDS));
  assertFinalState(stateMachine, FINISHED);
}

代码示例来源:origin: uk.co.nichesolutions.presto/presto-main

queryStateMachine.transitionToFinishing();

代码示例来源:origin: uk.co.nichesolutions.presto/presto-main

private static void assertFinalState(QueryStateMachine stateMachine, QueryState expectedState)
{
  assertTrue(expectedState.isDone());
  assertState(stateMachine, expectedState);
  assertFalse(stateMachine.transitionToPlanning());
  assertState(stateMachine, expectedState);
  assertFalse(stateMachine.transitionToStarting());
  assertState(stateMachine, expectedState);
  assertFalse(stateMachine.transitionToRunning());
  assertState(stateMachine, expectedState);
  assertFalse(stateMachine.transitionToFinishing());
  assertState(stateMachine, expectedState);
  assertFalse(stateMachine.transitionToFailed(FAILED_CAUSE));
  assertState(stateMachine, expectedState);
  // attempt to fail with another exception, which will fail
  assertFalse(stateMachine.transitionToFailed(new IOException("failure after finish")));
  assertState(stateMachine, expectedState);
}

代码示例来源:origin: uk.co.nichesolutions.presto/presto-main

@Test
public void testBasicStateChanges()
    throws InterruptedException
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertState(stateMachine, QUEUED);
  assertTrue(stateMachine.transitionToPlanning());
  assertState(stateMachine, PLANNING);
  assertTrue(stateMachine.transitionToStarting());
  assertState(stateMachine, STARTING);
  assertTrue(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  assertTrue(stateMachine.transitionToFinishing());
  stateMachine.waitForStateChange(FINISHING, new Duration(2, TimeUnit.SECONDS));
  assertState(stateMachine, FINISHED);
}

代码示例来源:origin: uk.co.nichesolutions.presto/presto-main

@Test
public void testRunning()
    throws InterruptedException
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  assertFalse(stateMachine.transitionToPlanning());
  assertState(stateMachine, RUNNING);
  assertFalse(stateMachine.transitionToStarting());
  assertState(stateMachine, RUNNING);
  assertFalse(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  assertTrue(stateMachine.transitionToFinishing());
  stateMachine.waitForStateChange(FINISHING, new Duration(2, TimeUnit.SECONDS));
  assertState(stateMachine, FINISHED);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToRunning();
  assertTrue(stateMachine.transitionToFailed(FAILED_CAUSE));
  assertState(stateMachine, FAILED);
}

代码示例来源:origin: uk.co.nichesolutions.presto/presto-main

@Test
public void testStarting()
    throws InterruptedException
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToStarting());
  assertState(stateMachine, STARTING);
  assertFalse(stateMachine.transitionToPlanning());
  assertState(stateMachine, STARTING);
  assertFalse(stateMachine.transitionToStarting());
  assertState(stateMachine, STARTING);
  assertTrue(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToStarting();
  assertTrue(stateMachine.transitionToFinishing());
  stateMachine.waitForStateChange(FINISHING, new Duration(2, TimeUnit.SECONDS));
  assertState(stateMachine, FINISHED);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToStarting();
  assertTrue(stateMachine.transitionToFailed(FAILED_CAUSE));
  assertState(stateMachine, FAILED);
}

代码示例来源:origin: uk.co.nichesolutions.presto/presto-main

@Test
public void testQueued()
    throws InterruptedException
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertState(stateMachine, QUEUED);
  assertTrue(stateMachine.transitionToPlanning());
  assertState(stateMachine, PLANNING);
  stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToStarting());
  assertState(stateMachine, STARTING);
  stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToFinishing());
  stateMachine.waitForStateChange(FINISHING, new Duration(2, TimeUnit.SECONDS));
  assertState(stateMachine, FINISHED);
  stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToFailed(FAILED_CAUSE));
  assertState(stateMachine, FAILED);
}

代码示例来源:origin: uk.co.nichesolutions.presto/presto-main

@Test
public void testPlanning()
    throws InterruptedException
{
  QueryStateMachine stateMachine = createQueryStateMachine();
  assertTrue(stateMachine.transitionToPlanning());
  assertState(stateMachine, PLANNING);
  assertFalse(stateMachine.transitionToPlanning());
  assertState(stateMachine, PLANNING);
  assertTrue(stateMachine.transitionToStarting());
  assertState(stateMachine, STARTING);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToPlanning();
  assertTrue(stateMachine.transitionToRunning());
  assertState(stateMachine, RUNNING);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToPlanning();
  assertTrue(stateMachine.transitionToFinishing());
  stateMachine.waitForStateChange(FINISHING, new Duration(2, TimeUnit.SECONDS));
  assertState(stateMachine, FINISHED);
  stateMachine = createQueryStateMachine();
  stateMachine.transitionToPlanning();
  assertTrue(stateMachine.transitionToFailed(FAILED_CAUSE));
  assertState(stateMachine, FAILED);
}

相关文章

微信公众号

最新文章

更多