Steven Hawkins created TEIID-6000:
-------------------------------------
Summary: Support virtual function inlining
Key: TEIID-6000
URL:
https://issues.redhat.com/browse/TEIID-6000
Project: Teiid
Issue Type: Sub-task
Components: Query Engine
Reporter: Steven Hawkins
Assignee: Steven Hawkins
Fix For: 16.0
Virtual functions defined purely in ddl can be inlined under a given set of
circumstances.
It should be driven/controlled by a hint/option - never inline, aways inline, or only
inline after pushdown (similar to our handling of things like concat2 where it's best
to pushdown the original function rather than the compensation).
the static analysis of whether the function can be inlined should be done only once - that
it's just a return statement with an expression. The parameter expressions would need
to be checked to see if anything is non-deterministic (or probably if it contains
subcommands) and to disallow the inlining if the parameter is used multiple times in the
expression (which could also be determined ahead of time). The rewrite could then handle
the appropriate expression mapping.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)