commit | b03ca2fb8fea0b45483697c5796e96898a70646f | [log] [tgz] |
---|---|---|
author | Stamatis Zampetakis <zabetak@gmail.com> | Tue Sep 21 12:22:50 2021 +0200 |
committer | Stamatis Zampetakis <zabetak@gmail.com> | Tue Sep 21 12:22:50 2021 +0200 |
tree | 499c475ffab847377951ad5a2f5d9cd40eba9855 | |
parent | 8ddb3f82e997d1a10619fc37ff7900823c7c0b91 [diff] |
Remove obsolete/misleading comments in RelOptUtil#classifyFilters The claim that filters are not pushed in the NULL generating side is not true (at least not anymore). Consider the following query: SELECT * FROM emp e LEFT JOIN dept d ON d.deptno > 20 In this case the filter in the ON clause can be pushed in the right which is the NULL generating side. This is already done by the FilterJoinRule generating a plan similar to the query below. SELECT * FROM emp e LEFT JOIN (SELECT * FROM dept d WHERE d.deptno > 20) ON true
Apache Calcite is a dynamic data management framework.
It contains many of the pieces that comprise a typical database management system but omits the storage primitives. It provides an industry standard SQL parser and validator, a customisable optimizer with pluggable rules and cost functions, logical and physical algebraic operators, various transformation algorithms from SQL to algebra (and the opposite), and many adapters for executing SQL queries over Cassandra, Druid, Elasticsearch, MongoDB, Kafka, and others, with minimal configuration.
For more details, see the home page.