本文整理了Java中com.facebook.presto.testing.QueryRunner.getDefaultSession
方法的一些代码示例,展示了QueryRunner.getDefaultSession
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。QueryRunner.getDefaultSession
方法的具体详情如下:
包路径:com.facebook.presto.testing.QueryRunner
类名称:QueryRunner
方法名:getDefaultSession
暂无
代码示例来源:origin: prestodb/presto
protected Session getSession()
{
return queryRunner.getDefaultSession();
}
代码示例来源:origin: prestodb/presto
@Override
public void execute(String sql)
{
try {
queryRunner.execute(queryRunner.getDefaultSession(), sql);
}
catch (Throwable e) {
throw new RuntimeException("Error executing sql:\n" + sql, e);
}
}
}
代码示例来源:origin: prestodb/presto
public void execute(QueryRunner prestoExecutor, DataSetup dataSetup)
{
execute(prestoExecutor, prestoExecutor.getDefaultSession(), dataSetup);
}
代码示例来源:origin: prestodb/presto
protected String formatSqlText(String sql)
{
return formatSql(sqlParser.createStatement(sql, createParsingOptions(queryRunner.getDefaultSession())), Optional.empty());
}
代码示例来源:origin: prestodb/presto
private List<QualifiedObjectName> listBlackHoleTables()
{
return queryRunner.listTables(queryRunner.getDefaultSession(), "blackhole", "default");
}
代码示例来源:origin: prestodb/presto
@Test
public void testShowSchemas()
{
MaterializedResult actualSchemas = computeActual("SHOW SCHEMAS").toTestTypes();
MaterializedResult.Builder resultBuilder = MaterializedResult.resultBuilder(getQueryRunner().getDefaultSession(), VARCHAR)
.row(getQueryRunner().getDefaultSession().getSchema().orElse("tpch"));
assertContains(actualSchemas, resultBuilder.build());
}
代码示例来源:origin: prestodb/presto
public void assertFails(@Language("SQL") String sql, @Language("RegExp") String expectedMessageRegExp)
{
try {
runner.execute(runner.getDefaultSession(), sql).toTestTypes();
fail(format("Expected query to fail: %s", sql));
}
catch (RuntimeException exception) {
if (!nullToEmpty(exception.getMessage()).matches(expectedMessageRegExp)) {
fail(format("Expected exception message '%s' to match '%s' for query: %s", exception.getMessage(), expectedMessageRegExp, sql), exception);
}
}
}
代码示例来源:origin: prestodb/presto
@Test
public void testShowTables()
{
MaterializedResult actualTables = computeActual("SHOW TABLES").toTestTypes();
MaterializedResult expectedTables = MaterializedResult.resultBuilder(getQueryRunner().getDefaultSession(), VARCHAR)
.row("orders")
.build();
assertContains(actualTables, expectedTables);
}
代码示例来源:origin: prestodb/presto
private static List<OptionalDouble> getEstimatedValues(List<Metric> metrics, String query, QueryRunner runner)
{
return transaction(runner.getTransactionManager(), runner.getAccessControl())
.singleStatement()
.execute(runner.getDefaultSession(), (Session session) -> getEstimatedValuesInternal(metrics, query, runner, session));
}
代码示例来源:origin: prestodb/presto
private Session getSession(String user)
{
return testSessionBuilder()
.setCatalog(queryRunner.getDefaultSession().getCatalog().get())
.setSchema(queryRunner.getDefaultSession().getSchema().get())
.setIdentity(new Identity(user, Optional.empty())).build();
}
}
代码示例来源:origin: prestodb/presto
public String getGraphvizExplainPlan(String query, ExplainType.Type planType)
{
QueryExplainer explainer = getQueryExplainer();
return transaction(queryRunner.getTransactionManager(), queryRunner.getAccessControl())
.singleStatement()
.execute(queryRunner.getDefaultSession(), session -> {
return explainer.getGraphvizPlan(session, sqlParser.createStatement(query, createParsingOptions(session)), planType, emptyList(), WarningCollector.NOOP);
});
}
代码示例来源:origin: prestodb/presto
public String getExplainPlan(String query, ExplainType.Type planType)
{
QueryExplainer explainer = getQueryExplainer();
return transaction(queryRunner.getTransactionManager(), queryRunner.getAccessControl())
.singleStatement()
.execute(queryRunner.getDefaultSession(), session -> {
return explainer.getPlan(session, sqlParser.createStatement(query, createParsingOptions(session)), planType, emptyList(), WarningCollector.NOOP);
});
}
代码示例来源:origin: prestodb/presto
private Session getSession(String user)
{
return testSessionBuilder()
.setCatalog(queryRunner.getDefaultSession().getCatalog().get())
.setSchema(queryRunner.getDefaultSession().getSchema().get())
.setIdentity(new Identity(user, Optional.empty())).build();
}
}
代码示例来源:origin: prestodb/presto
public void assertQueryAndPlan(
@Language("SQL") String actual,
@Language("SQL") String expected,
PlanMatchPattern pattern,
Consumer<Plan> planValidator)
{
assertQuery(actual, expected);
Plan plan = runner.createPlan(runner.getDefaultSession(), actual, WarningCollector.NOOP);
PlanAssert.assertPlan(runner.getDefaultSession(), runner.getMetadata(), runner.getStatsCalculator(), plan, pattern);
planValidator.accept(plan);
}
代码示例来源:origin: prestodb/presto
@Test(timeOut = 240_000, expectedExceptions = RuntimeException.class, expectedExceptionsMessageRegExp = ".*Query exceeded per-query local spill limit of 10B")
public void testQueryMaxSpillPerNodeLimit()
{
try (QueryRunner queryRunner = createLocalQueryRunner(new NodeSpillConfig().setQueryMaxSpillPerNode(DataSize.succinctBytes(10)))) {
queryRunner.execute(queryRunner.getDefaultSession(), "SELECT COUNT(DISTINCT clerk) as count, orderdate FROM orders GROUP BY orderdate ORDER BY count, orderdate");
}
}
代码示例来源:origin: prestodb/presto
@Test(timeOut = 240_000, expectedExceptions = RuntimeException.class, expectedExceptionsMessageRegExp = ".*Query exceeded local spill limit of 10B")
public void testMaxSpillPerNodeLimit()
{
try (QueryRunner queryRunner = createLocalQueryRunner(new NodeSpillConfig().setMaxSpillPerNode(DataSize.succinctBytes(10)))) {
queryRunner.execute(queryRunner.getDefaultSession(), "SELECT COUNT(DISTINCT clerk) as count, orderdate FROM orders GROUP BY orderdate ORDER BY count, orderdate");
}
}
代码示例来源:origin: prestodb/presto
@Override
@Test
public void testShowSchemas()
{
MaterializedResult actualSchemas = computeActual("SHOW SCHEMAS").toTestTypes();
MaterializedResult.Builder resultBuilder = MaterializedResult.resultBuilder(getQueryRunner().getDefaultSession(), VARCHAR)
.row("tiny")
.row("sf1");
assertContains(actualSchemas, resultBuilder.build());
}
}
代码示例来源:origin: prestodb/presto
/**
* Overrides original implementation because of usage of 'extra' column.
*/
@Test
@Override
public void testDescribeTable()
{
MaterializedResult actualColumns = this.computeActual("DESC orders").toTestTypes();
MaterializedResult.Builder builder = MaterializedResult.resultBuilder(this.getQueryRunner().getDefaultSession(), VarcharType.VARCHAR, VarcharType.VARCHAR, VarcharType.VARCHAR, VarcharType.VARCHAR);
for (MaterializedRow row : actualColumns.getMaterializedRows()) {
builder.row(row.getField(0), row.getField(1), "", "");
}
MaterializedResult filteredActual = builder.build();
builder = MaterializedResult.resultBuilder(this.getQueryRunner().getDefaultSession(), VarcharType.VARCHAR, VarcharType.VARCHAR, VarcharType.VARCHAR, VarcharType.VARCHAR);
MaterializedResult expectedColumns = builder
.row("orderkey", "bigint", "", "")
.row("custkey", "bigint", "", "")
.row("orderstatus", "varchar", "", "")
.row("totalprice", "double", "", "")
.row("orderdate", "varchar", "", "")
.row("orderpriority", "varchar", "", "")
.row("clerk", "varchar", "", "")
.row("shippriority", "integer", "", "")
.row("comment", "varchar", "", "").build();
assertEquals(filteredActual, expectedColumns, String.format("%s != %s", filteredActual, expectedColumns));
}
代码示例来源:origin: prestodb/presto
@Test
@Override
public void testDescribeTable()
{
MaterializedResult actualColumns = computeActual("DESC orders").toTestTypes();
MaterializedResult.Builder builder = resultBuilder(getQueryRunner().getDefaultSession(), VARCHAR, VARCHAR, VARCHAR, VARCHAR);
for (MaterializedRow row : actualColumns.getMaterializedRows()) {
builder.row(row.getField(0), row.getField(1), "", "");
}
MaterializedResult actualResult = builder.build();
builder = resultBuilder(getQueryRunner().getDefaultSession(), VARCHAR, VARCHAR, VARCHAR, VARCHAR);
MaterializedResult expectedColumns = builder
.row("orderkey", "bigint", "", "")
.row("custkey", "bigint", "", "")
.row("orderstatus", "varchar", "", "")
.row("totalprice", "double", "", "")
.row("orderdate", "varchar", "", "")
.row("orderpriority", "varchar", "", "")
.row("clerk", "varchar", "", "")
.row("shippriority", "bigint", "", "")
.row("comment", "varchar", "", "").build();
assertEquals(actualResult, expectedColumns, format("%s != %s", actualResult, expectedColumns));
}
}
代码示例来源:origin: prestodb/presto
@Override
public void testDescribeTable()
{
// we need specific implementation of this tests due to specific Presto<->Mysql varchar length mapping.
MaterializedResult actualColumns = computeActual("DESC ORDERS").toTestTypes();
MaterializedResult expectedColumns = MaterializedResult.resultBuilder(getQueryRunner().getDefaultSession(), VARCHAR, VARCHAR, VARCHAR, VARCHAR)
.row("orderkey", "bigint", "", "")
.row("custkey", "bigint", "", "")
.row("orderstatus", "varchar(255)", "", "")
.row("totalprice", "double", "", "")
.row("orderdate", "date", "", "")
.row("orderpriority", "varchar(255)", "", "")
.row("clerk", "varchar(255)", "", "")
.row("shippriority", "integer", "", "")
.row("comment", "varchar(255)", "", "")
.build();
assertEquals(actualColumns, expectedColumns);
}
内容来源于网络,如有侵权,请联系作者删除!