public PlanNodeStatsAssertion symbolStatsUnknown(Symbol symbol) { return symbolStats(symbol, columnStats -> columnStats .lowValueUnknown() .highValueUnknown() .nullsFractionUnknown() .distinctValuesCountUnknown()); }
@Test public void testCastUnknown() { assertCalculate(new Cast(new SymbolReference("a"), "bigint"), PlanNodeStatsEstimate.unknown()) .lowValueUnknown() .highValueUnknown() .distinctValuesCountUnknown() .nullsFractionUnknown() .dataSizeUnknown(); }
@Test public void testFunctionCall() { assertCalculate( new FunctionCall( QualifiedName.of("length"), ImmutableList.of(new Cast(new NullLiteral(), "VARCHAR(10)")))) .distinctValuesCount(0.0) .lowValueUnknown() .highValueUnknown() .nullsFraction(1.0); assertCalculate( new FunctionCall( QualifiedName.of("length"), ImmutableList.of(new SymbolReference("x"))), PlanNodeStatsEstimate.unknown(), TypeProvider.viewOf(ImmutableMap.of(new Symbol("x"), createVarcharType(2)))) .distinctValuesCountUnknown() .lowValueUnknown() .highValueUnknown() .nullsFractionUnknown(); }
.highValueUnknown() .distinctValuesCountUnknown() .nullsFractionUnknown()) .symbolStats("count", symbolStatsAssertion -> symbolStatsAssertion .lowValueUnknown() .highValueUnknown() .distinctValuesCountUnknown() .nullsFractionUnknown()) .symbolStats("count_on_x", symbolStatsAssertion -> symbolStatsAssertion .lowValueUnknown() .highValueUnknown() .distinctValuesCountUnknown() .nullsFractionUnknown()) .symbolStats("x", symbolStatsAssertion -> symbolStatsAssertion .lowValueUnknown() .highValueUnknown() .distinctValuesCountUnknown() .nullsFractionUnknown()));
.unknownRange() .distinctValuesCountUnknown() .nullsFractionUnknown()) .symbolStats("y", symbolStatsAssertion -> symbolStatsAssertion .unknownRange() .nullsFractionUnknown() .distinctValuesCountUnknown());
.highValue(7) .distinctValuesCount(4) .nullsFractionUnknown()) .symbolStats("o3", assertion -> assertion .lowValueUnknown()
.highValue(7) .distinctValuesCount(6.4) .nullsFractionUnknown()) .symbolStats("o3", assertion -> assertion .lowValueUnknown()