public DistributedQueryRunner build() throws Exception { return new DistributedQueryRunner(defaultSession, nodeCount, extraProperties, coordinatorProperties, parserOptions, environment); } }
@Override protected ResultsSession<MaterializedResult> getResultSession(Session session) { return new MaterializedResultSession(); }
@Override public Session getDefaultSession() { return prestoClient.getDefaultSession(); }
@Override public void installPlugin(Plugin plugin) { source.installPlugin(plugin); }
@Override protected MaterializedResult computeActual(@Language("SQL") String sql) { determinismChecker.checkPlanIsDeterministic(sql); return super.computeActual(sql); }
@Override public MaterializedResult execute(String sql) { return source.execute(sql); }
public String replace(Parameter... parameters) { String query = queryTemplate; for (Parameter parameter : parameters) { query = resolve(query, parameter); } for (Parameter parameter : defaultParameters) { query = resolve(query, parameter); } checkQueryHasAllParametersReplaced(query); return query; }
@Override public Metadata getMetadata() { return source.getMetadata(); }
@Override public TestingAccessControlManager getAccessControl() { return source.getAccessControl(); }
@BeforeClass public void setUp() { determinismChecker = new PlanDeterminismChecker((LocalQueryRunner) getQueryRunner()); }
@Override public void testCountDistinct() { assertQuery("SELECT COUNT(DISTINCT custkey + 1) FROM orders", "SELECT COUNT(*) FROM (SELECT DISTINCT custkey + 1 FROM orders) t"); assertQuery("SELECT COUNT(DISTINCT linenumber), COUNT(*) from lineitem where linenumber < 0"); }
@Override public List<QualifiedObjectName> listTables(Session session, String catalog, String schema) { return source.listTables(session, catalog, schema); }
@Override public Lock getExclusiveLock() { return source.getExclusiveLock(); } }
@Override public int getNodeCount() { return source.getNodeCount(); }
@Override public SplitManager getSplitManager() { return source.getSplitManager(); }
@Override public StatsCalculator getStatsCalculator() { return source.getStatsCalculator(); }
@Override public PageSourceManager getPageSourceManager() { return source.getPageSourceManager(); }
@Override public boolean tableExists(Session session, String table) { return source.tableExists(session, table); }
@Override public Session getDefaultSession() { return prestoClient.getDefaultSession(); }
@Override public MaterializedResult execute(Session session, String sql) { return source.execute(session, sql); }