commit | 93a2263f7af23be34171a6a1e4f5864a85691650 | [log] [tgz] |
---|---|---|
author | Julian Hyde <jhyde@apache.org> | Fri Mar 05 09:37:57 2021 -0800 |
committer | Julian Hyde <jhyde@apache.org> | Fri Mar 12 23:05:43 2021 -0800 |
tree | 30e9ab044ceb2b3639f31eadac72fa7f0a182b1b | |
parent | 008930a5a0a4310d642ae902365a883208d097cb [diff] |
[CALCITE-4524] Make some fields non-nullable (SqlSelect.selectList, DataContext.getTypeFactory) In order to make SqlSelect.selectList non-nullable, we had to change the flow in RelToSqlConverter, where selectList was initially null; now we set it to SqlNodeList.SINGLETON_STAR. Add class DataContexts, with a few useful implementations of interface DataContext. Phase out Schemas.createDataContext. Resolve some other TODOs relating to nullability.
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.