[
https://issues.jboss.org/browse/TEIID-4099?page=com.atlassian.jira.plugin...
]
Steven Hawkins resolved TEIID-4099.
-----------------------------------
Resolution: Done
To scan all predicates and create disjuncts works in some scenarios, but does not work for
correlated queries unless a dependent join is effectively created.
So the approach taken was to automatically create implicit non-covering indexes based upon
comparisons sent to the temp table.
The associated test case testWithImplicitIndexing, features a query "with a (x, y, z)
as /*+ no_inline */ (select e1, e2, e3 from pm1.g1) select (select max(x) from a where y =
pm1.g2.e2), pm1.g2.* from pm1.g2"
Which for the given rows counts processes in ~3% of the time with the optimization than
without as the correlation can be looked up in log time vs. a full scan.
Improve with clause performance
-------------------------------
Key: TEIID-4099
URL:
https://issues.jboss.org/browse/TEIID-4099
Project: Teiid
Issue Type: Enhancement
Components: Query Engine
Reporter: Steven Hawkins
Assignee: Steven Hawkins
Fix For: 10.0
We should do more to analyze predicates to determine if the rows of the common table can
be limited or if an index can be automatically added.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)