本文整理了Java中com.facebook.presto.execution.QueryManager.getQueryInfo
方法的一些代码示例,展示了QueryManager.getQueryInfo
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QueryManager.getQueryInfo
方法的具体详情如下:
包路径:com.facebook.presto.execution.QueryManager
类名称:QueryManager
方法名:getQueryInfo
暂无
代码示例来源:origin: prestodb/presto
@GET
@Path("{queryId}")
@Produces(MediaType.APPLICATION_JSON)
public QueryStateInfo getQueryStateInfo(@PathParam("queryId") String queryId)
throws WebApplicationException
{
try {
return getQueryStateInfo(queryManager.getQueryInfo(new QueryId(queryId)));
}
catch (NoSuchElementException e) {
throw new WebApplicationException(NOT_FOUND);
}
}
}
代码示例来源:origin: prestodb/presto
private Response failQuery(QueryId queryId, PrestoException queryException)
{
requireNonNull(queryId, "queryId is null");
try {
QueryState state = queryManager.getQueryState(queryId);
// check before killing to provide the proper error code (this is racy)
if (state.isDone()) {
return Response.status(Status.CONFLICT).build();
}
queryManager.failQuery(queryId, queryException);
// verify if the query was failed (if not, we lost the race)
if (!queryException.getErrorCode().equals(queryManager.getQueryInfo(queryId).getErrorCode())) {
return Response.status(Status.CONFLICT).build();
}
return Response.status(Status.OK).build();
}
catch (NoSuchElementException e) {
return Response.status(Status.GONE).build();
}
}
代码示例来源:origin: prestodb/presto
@Test(timeOut = 60_000L)
public void testQueryCpuLimit()
throws Exception
{
try (DistributedQueryRunner queryRunner = builder().setSingleExtraProperty("query.max-cpu-time", "1ms").build()) {
QueryId queryId = createQuery(queryRunner, TEST_SESSION, "SELECT COUNT(*) FROM lineitem");
waitForQueryState(queryRunner, queryId, FAILED);
QueryManager queryManager = queryRunner.getCoordinator().getQueryManager();
BasicQueryInfo queryInfo = queryManager.getQueryInfo(queryId);
assertEquals(queryInfo.getState(), FAILED);
assertEquals(queryInfo.getErrorCode(), EXCEEDED_CPU_LIMIT.toErrorCode());
}
}
}
代码示例来源:origin: prestodb/presto
private void testRejection()
throws Exception
{
try (DistributedQueryRunner queryRunner = createQueryRunner()) {
queryRunner.installPlugin(new ResourceGroupManagerPlugin());
queryRunner.getCoordinator().getResourceGroupManager().get().setConfigurationManager("file", ImmutableMap.of("resource-groups.config-file", getResourceFilePath("resource_groups_config_dashboard.json")));
QueryId queryId = createQuery(queryRunner, newRejectionSession(), LONG_LASTING_QUERY);
waitForQueryState(queryRunner, queryId, FAILED);
QueryManager queryManager = queryRunner.getCoordinator().getQueryManager();
assertEquals(queryManager.getQueryInfo(queryId).getErrorCode(), QUERY_REJECTED.toErrorCode());
}
}
代码示例来源:origin: prestodb/presto
@UsedByGeneratedCode
public void killQuery(String queryId, String message)
{
QueryId query = parseQueryId(queryId);
try {
QueryState state = queryManager.getQueryState(query);
// check before killing to provide the proper error message (this is racy)
if (state.isDone()) {
throw new PrestoException(NOT_SUPPORTED, "Target query is not running: " + queryId);
}
queryManager.failQuery(query, createKillQueryException(message));
// verify if the query was killed (if not, we lost the race)
if (!ADMINISTRATIVELY_KILLED.toErrorCode().equals(queryManager.getQueryInfo(query).getErrorCode())) {
throw new PrestoException(NOT_SUPPORTED, "Target query is not running: " + queryId);
}
}
catch (NoSuchElementException e) {
throw new PrestoException(NOT_FOUND, "Target query not found: " + queryId);
}
}
代码示例来源:origin: prestodb/presto
BasicQueryInfo queryInfo = server.getQueryManager().getQueryInfo(new QueryId(queryResults.getId()));
代码示例来源:origin: uk.co.nichesolutions.presto/presto-main
@GET
@Path("{queryId}")
public Response getQueryInfo(@PathParam("queryId") QueryId queryId)
{
requireNonNull(queryId, "queryId is null");
try {
QueryInfo queryInfo = queryManager.getQueryInfo(queryId);
return Response.ok(queryInfo).build();
}
catch (NoSuchElementException e) {
return Response.status(Status.GONE).build();
}
}
代码示例来源:origin: uk.co.nichesolutions.presto/presto-main
public synchronized QueryResults getResults(long token, UriInfo uriInfo, Duration maxWaitTime)
throws InterruptedException
{
// is the a repeated request for the last results?
String requestedPath = uriInfo.getAbsolutePath().getPath();
if (lastResultPath != null && requestedPath.equals(lastResultPath)) {
// tell query manager we are still interested in the query
queryManager.getQueryInfo(queryId);
queryManager.recordHeartbeat(queryId);
return lastResult;
}
if (token < resultId.get()) {
throw new WebApplicationException(Status.GONE);
}
// if this is not a request for the next results, return not found
if (lastResult.getNextUri() == null || !requestedPath.equals(lastResult.getNextUri().getPath())) {
// unknown token
throw new WebApplicationException(Status.NOT_FOUND);
}
return getNextResults(uriInfo, maxWaitTime);
}
代码示例来源:origin: uk.co.nichesolutions.presto/presto-tests
private static void waitForQueryState(DistributedQueryRunner queryRunner, QueryId queryId, Set<QueryState> expectedQueryStates)
throws InterruptedException
{
QueryManager queryManager = queryRunner.getCoordinator().getQueryManager();
do {
MILLISECONDS.sleep(500);
}
while (!expectedQueryStates.contains(queryManager.getQueryInfo(queryId).getState()));
}
代码示例来源:origin: uk.co.nichesolutions.presto/presto-main
QueryInfo queryInfo = queryManager.getQueryInfo(queryId);
while (maxWait.toMillis() > 1 && !isQueryStarted(queryInfo)) {
queryManager.recordHeartbeat(queryId);
maxWait = queryManager.waitForStateChange(queryId, queryInfo.getState(), maxWait);
queryInfo = queryManager.getQueryInfo(queryId);
代码示例来源:origin: uk.co.nichesolutions.presto/presto-main
QueryInfo queryInfo = queryManager.getQueryInfo(queryId);
queryManager.recordHeartbeat(queryId);
queryInfo = queryManager.getQueryInfo(queryId);
代码示例来源:origin: uk.co.nichesolutions.presto/presto-main
query = manager.getQueryInfo(QueryId.valueOf(queryId));
代码示例来源:origin: com.facebook.presto/presto-tests
@Test(timeOut = 60_000L)
public void testQueryCpuLimit()
throws Exception
{
try (DistributedQueryRunner queryRunner = builder().setSingleExtraProperty("query.max-cpu-time", "1ms").build()) {
QueryId queryId = createQuery(queryRunner, TEST_SESSION, "SELECT COUNT(*) FROM lineitem");
waitForQueryState(queryRunner, queryId, FAILED);
QueryManager queryManager = queryRunner.getCoordinator().getQueryManager();
BasicQueryInfo queryInfo = queryManager.getQueryInfo(queryId);
assertEquals(queryInfo.getState(), FAILED);
assertEquals(queryInfo.getErrorCode(), EXCEEDED_CPU_LIMIT.toErrorCode());
}
}
}
代码示例来源:origin: com.facebook.presto/presto-tests
private void testRejection()
throws Exception
{
try (DistributedQueryRunner queryRunner = createQueryRunner()) {
queryRunner.installPlugin(new ResourceGroupManagerPlugin());
queryRunner.getCoordinator().getResourceGroupManager().get().setConfigurationManager("file", ImmutableMap.of("resource-groups.config-file", getResourceFilePath("resource_groups_config_dashboard.json")));
QueryId queryId = createQuery(queryRunner, newRejectionSession(), LONG_LASTING_QUERY);
waitForQueryState(queryRunner, queryId, FAILED);
QueryManager queryManager = queryRunner.getCoordinator().getQueryManager();
assertEquals(queryManager.getQueryInfo(queryId).getErrorCode(), QUERY_REJECTED.toErrorCode());
}
}
代码示例来源:origin: uk.co.nichesolutions.presto/presto-main
QueryInfo queryInfo = server.getQueryManager().getQueryInfo(new QueryId(queryResults.getId()));
内容来源于网络,如有侵权,请联系作者删除!