Search in sources :

Example 21 with CapabilitiesFinder

use of org.teiid.query.optimizer.capabilities.CapabilitiesFinder in project teiid by teiid.

the class TestAggregateProcessing method testSidewaysCorrelationBelowAggregation.

@Test
public void testSidewaysCorrelationBelowAggregation() throws Exception {
    String sql = "select e1 from (SELECT sc.e1 FROM pm1.g1 sc, table(exec pm1.vsp21(sc.e2+1) ) as f ) as x group by e1";
    // $NON-NLS-1$
    Command command = helpParse(sql);
    CapabilitiesFinder capFinder = TestOptimizer.getGenericFinder();
    HardcodedDataManager dataManager = new HardcodedDataManager();
    // $NON-NLS-1$
    dataManager.addData(// $NON-NLS-1$
    "SELECT g_0.e2, g_0.e1 FROM pm1.g1 AS g_0", new List[] { // $NON-NLS-1$
    Arrays.asList(1, "1"), // $NON-NLS-1$
    Arrays.asList(2, "2") });
    // $NON-NLS-1$
    dataManager.addData(// $NON-NLS-1$
    "SELECT g_0.e1, g_0.e2 FROM pm1.g1 AS g_0", new List[] { // $NON-NLS-1$
    Arrays.asList("2", 2) });
    ProcessorPlan plan = helpGetPlan(command, RealMetadataFactory.example1Cached(), capFinder);
    List[] expected = new List[] { Arrays.asList("1"), Arrays.asList("2") };
    helpProcess(plan, dataManager, expected);
}
Also used : FakeCapabilitiesFinder(org.teiid.query.optimizer.capabilities.FakeCapabilitiesFinder) CapabilitiesFinder(org.teiid.query.optimizer.capabilities.CapabilitiesFinder) DefaultCapabilitiesFinder(org.teiid.query.optimizer.capabilities.DefaultCapabilitiesFinder) Command(org.teiid.query.sql.lang.Command) ArrayList(java.util.ArrayList) List(java.util.List) Test(org.junit.Test)

Example 22 with CapabilitiesFinder

use of org.teiid.query.optimizer.capabilities.CapabilitiesFinder in project teiid by teiid.

the class TestSQLXMLProcessing method testStaxComment.

@Test
public void testStaxComment() throws Exception {
    // $NON-NLS-1$
    String sql = "select * from xmltable('/*:Person/phoneNumber' passing cast(? as xml) columns x string path 'type', y string path 'number') as x";
    List<?>[] expected = new List<?>[] { Arrays.asList(null, "8881112222") };
    XMLInputFactory factory = XMLInputFactory.newFactory();
    XMLEventReader reader = factory.createXMLEventReader(new StringReader("<Person><!--hello--><phoneNumber><number>8881112222</number></phoneNumber></Person>"));
    XMLType value = new XMLType(new StAXSQLXML(new StAXSource(reader)));
    value.setType(Type.DOCUMENT);
    Command command = helpParse(sql);
    CommandContext context = createCommandContext();
    QueryMetadataInterface metadata = RealMetadataFactory.example1Cached();
    context.setMetadata(metadata);
    CapabilitiesFinder capFinder = new DefaultCapabilitiesFinder();
    ProcessorPlan plan = helpGetPlan(command, metadata, capFinder, context);
    setParameterValues(Arrays.asList(value), command, context);
    doProcess(plan, dataManager, expected, context);
}
Also used : CommandContext(org.teiid.query.util.CommandContext) StAXSource(javax.xml.transform.stax.StAXSource) DefaultCapabilitiesFinder(org.teiid.query.optimizer.capabilities.DefaultCapabilitiesFinder) XMLType(org.teiid.core.types.XMLType) CapabilitiesFinder(org.teiid.query.optimizer.capabilities.CapabilitiesFinder) DefaultCapabilitiesFinder(org.teiid.query.optimizer.capabilities.DefaultCapabilitiesFinder) Command(org.teiid.query.sql.lang.Command) StringReader(java.io.StringReader) XMLEventReader(javax.xml.stream.XMLEventReader) List(java.util.List) QueryMetadataInterface(org.teiid.query.metadata.QueryMetadataInterface) XMLInputFactory(javax.xml.stream.XMLInputFactory) StAXSQLXML(org.teiid.util.StAXSQLXML) Test(org.junit.Test)

Aggregations

CapabilitiesFinder (org.teiid.query.optimizer.capabilities.CapabilitiesFinder)22 DefaultCapabilitiesFinder (org.teiid.query.optimizer.capabilities.DefaultCapabilitiesFinder)21 Test (org.junit.Test)17 FakeCapabilitiesFinder (org.teiid.query.optimizer.capabilities.FakeCapabilitiesFinder)16 BasicSourceCapabilities (org.teiid.query.optimizer.capabilities.BasicSourceCapabilities)12 QueryMetadataInterface (org.teiid.query.metadata.QueryMetadataInterface)10 CommandContext (org.teiid.query.util.CommandContext)9 TransformationMetadata (org.teiid.query.metadata.TransformationMetadata)6 TeiidComponentException (org.teiid.core.TeiidComponentException)5 TeiidProcessingException (org.teiid.core.TeiidProcessingException)5 PreparedPlan (org.teiid.dqp.internal.process.PreparedPlan)5 Command (org.teiid.query.sql.lang.Command)5 List (java.util.List)4 ProcessorPlan (org.teiid.query.processor.ProcessorPlan)4 RelationalPlan (org.teiid.query.processor.relational.RelationalPlan)3 ArrayList (java.util.ArrayList)2 ModelMetaData (org.teiid.adminapi.impl.ModelMetaData)2 SourceCapabilities (org.teiid.query.optimizer.capabilities.SourceCapabilities)2 ProjectNode (org.teiid.query.processor.relational.ProjectNode)2 StringReader (java.io.StringReader)1