Search in sources :

Example 26 with Plan

use of io.trino.sql.planner.Plan in project trino by trinodb.

the class MetricComparator method getEstimatedValuesInternal.

private static List<OptionalDouble> getEstimatedValuesInternal(List<Metric> metrics, String query, QueryRunner runner, Session session) // TODO inline back this method
{
    Plan queryPlan = runner.createPlan(session, query, WarningCollector.NOOP);
    OutputNode outputNode = (OutputNode) queryPlan.getRoot();
    PlanNodeStatsEstimate outputNodeStats = queryPlan.getStatsAndCosts().getStats().getOrDefault(queryPlan.getRoot().getId(), PlanNodeStatsEstimate.unknown());
    StatsContext statsContext = buildStatsContext(queryPlan, outputNode);
    return getEstimatedValues(metrics, outputNodeStats, statsContext);
}
Also used : OutputNode(io.trino.sql.planner.plan.OutputNode) PlanNodeStatsEstimate(io.trino.cost.PlanNodeStatsEstimate) Plan(io.trino.sql.planner.Plan)

Aggregations

Plan (io.trino.sql.planner.Plan)26 Test (org.testng.annotations.Test)9 BasePlanTest (io.trino.sql.planner.assertions.BasePlanTest)8 PlanNode (io.trino.sql.planner.plan.PlanNode)8 SubPlan (io.trino.sql.planner.SubPlan)7 PlanNodeIdAllocator (io.trino.sql.planner.PlanNodeIdAllocator)4 Duration (io.airlift.units.Duration)3 OPTIMIZED_AND_VALIDATED (io.trino.sql.planner.LogicalPlanner.Stage.OPTIMIZED_AND_VALIDATED)3 PlanAssert.assertPlan (io.trino.sql.planner.assertions.PlanAssert.assertPlan)3 PlanNodeSearcher.searchFrom (io.trino.sql.planner.optimizations.PlanNodeSearcher.searchFrom)3 ImmutableList (com.google.common.collect.ImmutableList)2 ImmutableMap (com.google.common.collect.ImmutableMap)2 Iterables (com.google.common.collect.Iterables)2 Session (io.trino.Session)2 PlannerContext (io.trino.sql.PlannerContext)2 LogicalPlanner (io.trino.sql.planner.LogicalPlanner)2 Symbol (io.trino.sql.planner.Symbol)2 TypeProvider (io.trino.sql.planner.TypeProvider)2 PlanBuilder (io.trino.sql.planner.iterative.rule.test.PlanBuilder)2 JoinNode (io.trino.sql.planner.plan.JoinNode)2