io.prestosql.execution.QueryManager.getFullQueryInfo()方法的使用及代码示例

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

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

QueryManager.getFullQueryInfo介绍

暂无

代码示例

代码示例来源:origin: io.prestosql/presto-main

@GET
@Path("{queryId}")
public Response getQueryInfo(@PathParam("queryId") QueryId queryId)
{
  requireNonNull(queryId, "queryId is null");
  try {
    QueryInfo queryInfo = queryManager.getFullQueryInfo(queryId);
    return Response.ok(queryInfo).build();
  }
  catch (NoSuchElementException e) {
    return Response.status(Status.GONE).build();
  }
}

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

@GET
@Path("{queryId}")
public Response getQueryInfo(@PathParam("queryId") QueryId queryId)
{
  requireNonNull(queryId, "queryId is null");
  try {
    QueryInfo queryInfo = queryManager.getFullQueryInfo(queryId);
    return Response.ok(queryInfo).build();
  }
  catch (NoSuchElementException e) {
    return Response.status(Status.GONE).build();
  }
}

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

public QueryInfo getQueryInfo(QueryId queryId)
{
  return coordinator.getQueryManager().getFullQueryInfo(queryId);
}

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

private void assertResourceGroup(DistributedQueryRunner queryRunner, Session session, String query, ResourceGroupId expectedResourceGroup)
    throws InterruptedException
{
  QueryId queryId = createQuery(queryRunner, session, query);
  waitForQueryState(queryRunner, queryId, ImmutableSet.of(RUNNING, FINISHED));
  Optional<ResourceGroupId> resourceGroupId = queryRunner.getCoordinator().getQueryManager().getFullQueryInfo(queryId).getResourceGroupId();
  assertTrue(resourceGroupId.isPresent(), "Query should have a resource group");
  assertEquals(resourceGroupId.get(), expectedResourceGroup, format("Expected: '%s' resource group, found: %s", expectedResourceGroup, resourceGroupId.get()));
}

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

@Test
public void testQueryTypeBasedSelection()
    throws InterruptedException
{
  Session session = testSessionBuilder()
      .setCatalog("tpch")
      .setSchema("sf100000")
      .build();
  QueryId queryId = createQuery(queryRunner, session, "EXPLAIN " + LONG_LASTING_QUERY);
  waitForQueryState(queryRunner, queryId, ImmutableSet.of(RUNNING, FINISHED));
  Optional<ResourceGroupId> resourceGroupId = queryRunner.getCoordinator().getQueryManager().getFullQueryInfo(queryId).getResourceGroupId();
  assertTrue(resourceGroupId.isPresent(), "Query should have a resource group");
  assertEquals(resourceGroupId.get(), createResourceGroupId("explain"));
}

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

private void assertResourceGroupWithClientTags(Set<String> clientTags, ResourceGroupId expectedResourceGroup)
      throws InterruptedException
  {
    Session session = testSessionBuilder()
        .setCatalog("tpch")
        .setSchema("sf100000")
        .setSource("client_tags")
        .setClientTags(clientTags)
        .build();
    QueryId queryId = createQuery(queryRunner, session, LONG_LASTING_QUERY);
    waitForQueryState(queryRunner, queryId, ImmutableSet.of(RUNNING, FINISHED));
    Optional<ResourceGroupId> resourceGroupId = queryRunner.getCoordinator().getQueryManager().getFullQueryInfo(queryId).getResourceGroupId();
    assertTrue(resourceGroupId.isPresent(), "Query should have a resource group");
    assertEquals(resourceGroupId.get(), expectedResourceGroup, format("Expected: '%s' resource group, found: %s", expectedResourceGroup, resourceGroupId.get()));
  }
}

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

@Test(timeOut = 60_000)
public void testSelectorPriority()
    throws Exception
{
  InternalResourceGroupManager manager = queryRunner.getCoordinator().getResourceGroupManager().get();
  QueryManager queryManager = queryRunner.getCoordinator().getQueryManager();
  DbResourceGroupConfigurationManager dbConfigurationManager = (DbResourceGroupConfigurationManager) manager.getConfigurationManager();
  QueryId firstQuery = createQuery(queryRunner, dashboardSession(), LONG_LASTING_QUERY);
  waitForQueryState(queryRunner, firstQuery, RUNNING);
  Optional<ResourceGroupId> resourceGroup = queryManager.getFullQueryInfo(firstQuery).getResourceGroupId();
  assertTrue(resourceGroup.isPresent());
  assertEquals(resourceGroup.get().toString(), "global.user-user.dashboard-user");
  // create a new resource group that rejects all queries submitted to it
  dao.insertResourceGroup(8, "reject-all-queries", "1MB", 0, 0, 0, null, null, null, null, null, 3L, TEST_ENVIRONMENT);
  // add a new selector that has a higher priority than the existing dashboard selector and that routes queries to the "reject-all-queries" resource group
  dao.insertSelector(8, 200, "user.*", "(?i).*dashboard.*", null, null, null);
  // reload the configuration
  dbConfigurationManager.load();
  QueryId secondQuery = createQuery(queryRunner, dashboardSession(), LONG_LASTING_QUERY);
  waitForQueryState(queryRunner, secondQuery, FAILED);
  resourceGroup = queryManager.getFullQueryInfo(secondQuery).getResourceGroupId();
  assertTrue(resourceGroup.isPresent());
  assertEquals(resourceGroup.get(), createResourceGroupId("global", "user-user", "reject-all-queries"));
}

代码示例来源:origin: io.prestosql/presto-main

.map(queryId -> {
  try {
    return queryManager.getFullQueryInfo(queryId);

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

public static Query create(
    SessionContext sessionContext,
    String query,
    QueryManager queryManager,
    SessionPropertyManager sessionPropertyManager,
    ExchangeClient exchangeClient,
    Executor dataProcessorExecutor,
    ScheduledExecutorService timeoutExecutor,
    BlockEncodingSerde blockEncodingSerde)
{
  Query result = new Query(sessionContext, query, queryManager, sessionPropertyManager, exchangeClient, dataProcessorExecutor, timeoutExecutor, blockEncodingSerde);
  // register listeners after submission finishes
  addSuccessCallback(result.submissionFuture, () -> {
    result.queryManager.addOutputInfoListener(result.getQueryId(), result::setQueryOutputInfo);
    result.queryManager.addStateChangeListener(result.getQueryId(), state -> {
      if (state.isDone()) {
        QueryInfo queryInfo = queryManager.getFullQueryInfo(result.getQueryId());
        result.closeExchangeClientIfNecessary(queryInfo);
      }
    });
  });
  return result;
}

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

.map(queryId -> {
  try {
    return queryManager.getFullQueryInfo(queryId);

代码示例来源:origin: io.prestosql/presto-main

public static Query create(
    SessionContext sessionContext,
    String query,
    QueryManager queryManager,
    SessionPropertyManager sessionPropertyManager,
    ExchangeClient exchangeClient,
    Executor dataProcessorExecutor,
    ScheduledExecutorService timeoutExecutor,
    BlockEncodingSerde blockEncodingSerde)
{
  Query result = new Query(sessionContext, query, queryManager, sessionPropertyManager, exchangeClient, dataProcessorExecutor, timeoutExecutor, blockEncodingSerde);
  // register listeners after submission finishes
  addSuccessCallback(result.submissionFuture, () -> {
    result.queryManager.addOutputInfoListener(result.getQueryId(), result::setQueryOutputInfo);
    result.queryManager.addStateChangeListener(result.getQueryId(), state -> {
      if (state.isDone()) {
        QueryInfo queryInfo = queryManager.getFullQueryInfo(result.getQueryId());
        result.closeExchangeClientIfNecessary(queryInfo);
      }
    });
  });
  return result;
}

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

@Test
public void testMetadataIsClearedAfterQueryCanceled()
    throws Exception
{
  QueryManager queryManager = queryRunner.getCoordinator().getQueryManager();
  QueryId queryId = queryManager.createQueryId();
  queryManager.createQuery(
      queryId,
      new TestingSessionContext(TEST_SESSION),
      "SELECT * FROM lineitem")
      .get();
  // wait until query starts running
  while (true) {
    QueryInfo queryInfo = queryManager.getFullQueryInfo(queryId);
    if (queryInfo.getState().isDone()) {
      assertEquals(queryInfo.getState(), FAILED);
      throw queryInfo.getFailureInfo().toException();
    }
    if (queryInfo.getState() == RUNNING) {
      break;
    }
    Thread.sleep(100);
  }
  // cancel query
  queryManager.cancelQuery(queryId);
  assertEquals(metadataManager.getCatalogsByQueryId().size(), 0);
}

代码示例来源:origin: io.prestosql/presto-main

session = queryManager.getFullQueryInfo(queryId).getSession().toSession(sessionPropertyManager);
  serde = new PagesSerdeFactory(blockEncodingSerde, isExchangeCompressionEnabled(session)).createPagesSerde();
QueryInfo queryInfo = queryManager.getFullQueryInfo(queryId);
queryManager.recordHeartbeat(queryId);

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

@Test(timeOut = 60_000L)
public void testFailQuery()
    throws Exception
{
  QueryManager queryManager = queryRunner.getCoordinator().getQueryManager();
  QueryId queryId = queryManager.createQueryId();
  queryManager.createQuery(
      queryId,
      new TestingSessionContext(TEST_SESSION),
      "SELECT * FROM lineitem")
      .get();
  // wait until query starts running
  while (true) {
    QueryState state = queryManager.getQueryState(queryId);
    if (state.isDone()) {
      fail("unexpected query state: " + state);
    }
    if (state == RUNNING) {
      break;
    }
    Thread.sleep(100);
  }
  // cancel query
  queryManager.failQuery(queryId, new PrestoException(GENERIC_INTERNAL_ERROR, "mock exception"));
  QueryInfo queryInfo = queryManager.getFullQueryInfo(queryId);
  assertEquals(queryInfo.getState(), FAILED);
  assertEquals(queryInfo.getErrorCode(), GENERIC_INTERNAL_ERROR.toErrorCode());
  assertNotNull(queryInfo.getFailureInfo());
  assertEquals(queryInfo.getFailureInfo().getMessage(), "mock exception");
}

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

session = queryManager.getFullQueryInfo(queryId).getSession().toSession(sessionPropertyManager);
  serde = new PagesSerdeFactory(blockEncodingSerde, isExchangeCompressionEnabled(session)).createPagesSerde();
QueryInfo queryInfo = queryManager.getFullQueryInfo(queryId);
queryManager.recordHeartbeat(queryId);

相关文章