Ejemplo n.º 1
0
  @Test
  public void testAbort() throws Exception {
    SqlTask sqlTask = createInitialTask();

    TaskInfo taskInfo =
        sqlTask.updateTask(
            SESSION,
            PLAN_FRAGMENT,
            ImmutableList.of(new TaskSource(TABLE_SCAN_NODE_ID, ImmutableSet.of(SPLIT), true)),
            INITIAL_EMPTY_OUTPUT_BUFFERS
                .withBuffer("out", new UnpartitionedPagePartitionFunction())
                .withNoMoreBufferIds());
    assertEquals(taskInfo.getState(), TaskState.RUNNING);

    taskInfo = sqlTask.getTaskInfo();
    assertEquals(taskInfo.getState(), TaskState.RUNNING);

    sqlTask.abortTaskResults("out");

    taskInfo = sqlTask.getTaskInfo(taskInfo.getState()).get(1, TimeUnit.SECONDS);
    assertEquals(taskInfo.getState(), TaskState.FINISHED);

    taskInfo = sqlTask.getTaskInfo();
    assertEquals(taskInfo.getState(), TaskState.FINISHED);
  }