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

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

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

QueryStateMachine.setUpdateType介绍

暂无

代码示例

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

private <T extends Statement> DataDefinitionExecution<T> createDataDefinitionExecution(
      String query,
      Session session,
      ResourceGroupId resourceGroup,
      T statement,
      List<Expression> parameters,
      WarningCollector warningCollector)
  {
    @SuppressWarnings("unchecked")
    DataDefinitionTask<T> task = (DataDefinitionTask<T>) tasks.get(statement.getClass());
    checkArgument(task != null, "no task for statement: %s", statement.getClass().getSimpleName());
    QueryStateMachine stateMachine = QueryStateMachine.begin(
        query,
        session,
        locationFactory.createQueryLocation(session.getQueryId()),
        resourceGroup,
        task.isTransactionControl(),
        transactionManager,
        accessControl,
        executor,
        metadata,
        warningCollector);
    stateMachine.setUpdateType(task.getName());
    return new DataDefinitionExecution<>(task, statement, transactionManager, metadata, accessControl, stateMachine, parameters);
  }
}

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

this.analysis = analyzer.analyze(preparedQuery.getStatement());
stateMachine.setUpdateType(analysis.getUpdateType());

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

private QueryStateMachine createQueryStateMachineWithTicker(Ticker ticker)
{
  Metadata metadata = MetadataManager.createTestMetadataManager();
  TransactionManager transactionManager = createTestTransactionManager();
  AccessControl accessControl = new AccessControlManager(transactionManager);
  QueryStateMachine stateMachine = QueryStateMachine.beginWithTicker(
      QUERY,
      TEST_SESSION,
      LOCATION,
      new ResourceGroupId("test"),
      false,
      transactionManager,
      accessControl,
      executor,
      ticker,
      metadata,
      WarningCollector.NOOP);
  stateMachine.setInputs(INPUTS);
  stateMachine.setOutput(OUTPUT);
  stateMachine.setColumns(OUTPUT_FIELD_NAMES, OUTPUT_FIELD_TYPES);
  stateMachine.setUpdateType(UPDATE_TYPE);
  stateMachine.setMemoryPool(MEMORY_POOL);
  for (Entry<String, String> entry : SET_SESSION_PROPERTIES.entrySet()) {
    stateMachine.addSetSessionProperties(entry.getKey(), entry.getValue());
  }
  RESET_SESSION_PROPERTIES.forEach(stateMachine::addResetSessionProperties);
  return stateMachine;
}

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

@Override
public DataDefinitionExecution<?> createQueryExecution(
    QueryId queryId,
    String query,
    Session session,
    Statement statement)
{
  URI self = locationFactory.createQueryLocation(queryId);
  DataDefinitionTask<Statement> task = getTask(statement);
  checkArgument(task != null, "no task for statement: %s", statement.getClass().getSimpleName());
  QueryStateMachine stateMachine = QueryStateMachine.begin(queryId, query, session, self, task.isTransactionControl(), transactionManager, executor);
  stateMachine.setUpdateType(task.getName());
  return new DataDefinitionExecution<>(task, statement, transactionManager, metadata, accessControl, stateMachine);
}

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

private QueryStateMachine createQueryStateMachine()
{
  TransactionManager transactionManager = createTestTransactionManager();
  QueryStateMachine stateMachine = QueryStateMachine.begin(QUERY_ID, QUERY, TEST_SESSION, LOCATION, false, transactionManager, executor);
  stateMachine.setInputs(INPUTS);
  stateMachine.setOutputFieldNames(OUTPUT_FIELD_NAMES);
  stateMachine.setUpdateType(UPDATE_TYPE);
  stateMachine.setMemoryPool(MEMORY_POOL);
  for (Entry<String, String> entry : SET_SESSION_PROPERTIES.entrySet()) {
    stateMachine.addSetSessionProperties(entry.getKey(), entry.getValue());
  }
  RESET_SESSION_PROPERTIES.forEach(stateMachine::addResetSessionProperties);
  return stateMachine;
}

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

private SubPlan doAnalyzeQuery()
{
  // time analysis phase
  long analysisStart = System.nanoTime();
  // analyze query
  Analyzer analyzer = new Analyzer(stateMachine.getSession(), metadata, sqlParser, accessControl, Optional.of(queryExplainer), experimentalSyntaxEnabled);
  Analysis analysis = analyzer.analyze(statement);
  stateMachine.setUpdateType(analysis.getUpdateType());
  // plan query
  PlanNodeIdAllocator idAllocator = new PlanNodeIdAllocator();
  LogicalPlanner logicalPlanner = new LogicalPlanner(stateMachine.getSession(), planOptimizers, idAllocator, metadata);
  Plan plan = logicalPlanner.plan(analysis);
  // extract inputs
  List<Input> inputs = new InputExtractor(metadata, stateMachine.getSession()).extract(plan.getRoot());
  stateMachine.setInputs(inputs);
  // fragment the plan
  SubPlan subplan = new PlanFragmenter().createSubPlans(plan);
  // record analysis time
  stateMachine.recordAnalysisTime(analysisStart);
  return subplan;
}

相关文章

微信公众号

最新文章

更多