@Test(expectedExceptions = {UnsupportedOperationException.class}) public void testGetEstimatedExecTimeMillis() throws Exception { cost1.getEstimatedExecTimeMillis(); }
public QueryCostTO build() { Long estimatedExecTimeMillis = null; Double estimatedResourceUsage = null; try { estimatedExecTimeMillis = cost.getEstimatedExecTimeMillis(); } catch (UnsupportedOperationException e) { log.debug("estimated exec time not supported for {}", cost.getClass().getCanonicalName()); } try { estimatedResourceUsage = cost.getEstimatedResourceUsage(); } catch (UnsupportedOperationException e) { log.debug("estimated resource usage not supported for {}", cost.getClass().getCanonicalName()); } return new QueryCostTO(estimatedExecTimeMillis, estimatedResourceUsage, cost.getQueryCostType()); } }
public QueryCostTO build() { Long estimatedExecTimeMillis = null; Double estimatedResourceUsage = null; try { estimatedExecTimeMillis = cost.getEstimatedExecTimeMillis(); } catch (UnsupportedOperationException e) { log.debug("estimated exec time not supported for {}", cost.getClass().getCanonicalName()); } try { estimatedResourceUsage = cost.getEstimatedResourceUsage(); } catch (UnsupportedOperationException e) { log.debug("estimated resource usage not supported for {}", cost.getClass().getCanonicalName()); } return new QueryCostTO(estimatedExecTimeMillis, estimatedResourceUsage, cost.getQueryCostType()); } }
@Test(expectedExceptions = {UnsupportedOperationException.class}) public void testEstimateNativeQuery() throws Exception { createTestTable("test_estimate"); SessionState.setCurrentSessionState(ss); QueryCost cost = driver.estimate(createExplainContext("SELECT ID FROM test_estimate", queryConf)); assertEquals(cost.getEstimatedResourceUsage(), Double.MAX_VALUE); cost.getEstimatedExecTimeMillis(); }
@Test(expectedExceptions = {UnsupportedOperationException.class}) public void testEstimateOlapQuery() throws Exception { SessionState.setCurrentSessionState(ss); ExplainQueryContext ctx = createExplainContext("cube SELECT ID FROM test_cube", queryConf); ctx.setOlapQuery(true); ctx.getDriverContext().setDriverRewriterPlan(driver, new DriverQueryPlan() { @Override public String getPlan() { return null; } @Override public QueryCost getCost() { return null; } @Override public Map<String, Set<?>> getPartitions() { return Maps.newHashMap(); } }); QueryCost cost = driver.estimate(ctx); assertEquals(cost.getEstimatedResourceUsage(), 0.0); cost.getEstimatedExecTimeMillis(); }