@Test public void testLimitWithUnknownChildCardinality() throws Exception { String query = "select e1 from pm1.g1 limit 2"; //$NON-NLS-1$ RelationalPlan plan = (RelationalPlan)TestOptimizer.helpPlan(query, RealMetadataFactory.example1Cached(), new String[] {"SELECT e1 FROM pm1.g1"}); //$NON-NLS-1$ assertEquals(new Float(2), plan.getRootNode().getEstimateNodeCardinality()); }
private void helpTestQuery(float cost, String query, String[] expected) throws TeiidComponentException, TeiidProcessingException { RelationalPlan plan = (RelationalPlan)TestOptimizer.helpPlan(query, TestVirtualDepJoin.exampleVirtualDepJoin(), expected, ComparisonMode.EXACT_COMMAND_STRING); //$NON-NLS-1$ //$NON-NLS-2$ assertEquals(cost, plan.getRootNode().getEstimateNodeCardinality()); }
Number originalCardinality = originalPlan.getRootNode().getEstimateNodeCardinality(); if (!plannedResult.mergeJoin && originalCardinality.floatValue() == NewCalculateCostUtil.UNKNOWN_VALUE) { Number planCardinality = subPlan.getRootNode().getEstimateNodeCardinality();
Number originalCardinality = originalPlan.getRootNode().getEstimateNodeCardinality(); if (!plannedResult.mergeJoin && originalCardinality.floatValue() == NewCalculateCostUtil.UNKNOWN_VALUE) { Number planCardinality = subPlan.getRootNode().getEstimateNodeCardinality();
Number originalCardinality = originalPlan.getRootNode().getEstimateNodeCardinality(); if (!plannedResult.mergeJoin && originalCardinality.floatValue() == NewCalculateCostUtil.UNKNOWN_VALUE) { Number planCardinality = subPlan.getRootNode().getEstimateNodeCardinality();
@Test public void testDefaultMaterializationWithPK() throws Exception { String userSql = "SELECT * from vgroup3 where x = 'foo'"; //$NON-NLS-1$ TransformationMetadata metadata = RealMetadataFactory.exampleMaterializedView(); AnalysisRecord analysis = new AnalysisRecord(true, DEBUG); Command command = helpGetCommand(userSql, metadata); CommandContext cc = new CommandContext(); GlobalTableStoreImpl gts = new GlobalTableStoreImpl(null, metadata.getVdbMetaData(), metadata); cc.setGlobalTableStore(gts); RelationalPlan plan = (RelationalPlan)TestOptimizer.getPlan(command, metadata, getGenericFinder(), analysis, true, cc); assertEquals(1f, plan.getRootNode().getEstimateNodeCardinality()); TestOptimizer.checkAtomicQueries(new String[] {"SELECT #MAT_MATVIEW.VGROUP3.x, #MAT_MATVIEW.VGROUP3.y FROM #MAT_MATVIEW.VGROUP3 WHERE #MAT_MATVIEW.VGROUP3.x = 'foo'"}, plan); Collection<Annotation> annotations = analysis.getAnnotations(); assertNotNull("Expected annotations but got none", annotations); //$NON-NLS-1$ assertEquals("Expected one annotation", 1, annotations.size()); //$NON-NLS-1$ assertEquals("Expected catagory mat view", annotations.iterator().next().getCategory(), Annotation.MATERIALIZED_VIEW); //$NON-NLS-1$ }
RelationalPlan procPlan = subPlan; RelationalNode root = procPlan.getRootNode(); Number planCardinality = root.getEstimateNodeCardinality(); if (planCardinality != null) { ((TempMetadataID)with.getGroupSymbol().getMetadataID()).setCardinality(planCardinality.intValue());
RelationalPlan procPlan = subPlan; RelationalNode root = procPlan.getRootNode(); Number planCardinality = root.getEstimateNodeCardinality(); if (planCardinality != null) { ((TempMetadataID)with.getGroupSymbol().getMetadataID()).setCardinality(planCardinality.intValue());
RelationalPlan procPlan = subPlan; RelationalNode root = procPlan.getRootNode(); Number planCardinality = root.getEstimateNodeCardinality(); if (planCardinality != null) { ((TempMetadataID)with.getGroupSymbol().getMetadataID()).setCardinality(planCardinality.intValue());
root = root.getChildren()[0]; Number planCardinality = root.getEstimateNodeCardinality();