-
1. Re: Properly registering functions for pushdown in the translator
markaddleman Apr 13, 2012 12:52 AM (in response to markaddleman)A related issue: I think you mentioned in a previous discussion that the planner could output a reason why push down doesn't occur. Is so, is there a jira ticket for it? If not, I'll add one.
-
2. Re: Properly registering functions for pushdown in the translator
markaddleman Apr 13, 2012 8:16 AM (in response to markaddleman)Forgot to desribe my getSupportedFunctions() method: It is nearly identical to the DB2ExecutionFactory's getSupportedFunctions(). In particular, it includes both
- supportedFunctions.add("||");
- supportedFunctions.add("CONCAT");
-
3. Re: Properly registering functions for pushdown in the translator
shawkins Apr 13, 2012 8:41 AM (in response to markaddleman)Valid Teiid pushdown functions are captured in org.teiid.translator.SourceSystemFunctions. CONCAT should be valid. https://issues.jboss.org/browse/TEIID-1990 fixed the bug that was not capturing mot of the plan debug log messages.
Steve
-
4. Re: Properly registering functions for pushdown in the translator
markaddleman Apr 13, 2012 9:13 AM (in response to shawkins)I must have some bug. Quick question: Does case matter in the function names returned in the supportedFunctions list?
-
5. Re: Properly registering functions for pushdown in the translator
shawkins Apr 13, 2012 10:24 AM (in response to markaddleman)Case does not matter, the functions are checked via a case insensitive treemap. Do you have TEIID-1990 applied?
-
6. Re: Properly registering functions for pushdown in the translator
markaddleman Apr 13, 2012 10:31 AM (in response to shawkins)No, we don't have Teiid-1990 applied yet. Let me see about getting that applied.
-
7. Re: Properly registering functions for pushdown in the translator
markaddleman Apr 14, 2012 6:25 PM (in response to markaddleman)It turns out that I registered "||" operator as the supported function rather than "CONCAT" without thinking about it. Switching the registered function to CONCAT works as expected.
-
8. Re: Properly registering functions for pushdown in the translator
markaddleman Apr 14, 2012 6:33 PM (in response to markaddleman)It's probably pretty obvious by now that we write a bunch of custom translators. In the process, we uncover little tidbits like || operator rewritten as concat function in the pushdown objects that translators see.
I'd like to contribute things like this to the wiki. What do you think about adding a page to collect bits like this? Initially, I imagine the page would only a laundry list of these thing. Over time, we can find an appropriate organization.
-
9. Re: Properly registering functions for pushdown in the translator
shawkins Apr 16, 2012 10:02 AM (in response to markaddleman)Mark,
Yes, a wiki page would be great. If you also have anything that would be a good expansion to the docs, they are now on confluence making contributions much easier - https://docs.jboss.org/author/display/TEIID/Home
We should also expand the javadoc where applicable. We just have a see annotation in the getSupportedFunctions to the SourceSystemFunctions class. It should also have some text explaining that the functions there are canonicallized, etc.
Steve