Option 2 seems reasonable to me as well, since Calcite aims for extensibility, having clear examples on how to customize it for a given database is an important aspect of what we do
On Sun, Dec 7, 2025, 01:15 Julian Hyde (Jira) <[email protected]> wrote: > > [ > https://issues.apache.org/jira/browse/CALCITE-7270?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18043280#comment-18043280 > ] > > Julian Hyde commented on CALCITE-7270: > -------------------------------------- > > Option 2 sounds reasonable: provide a blueprint that people can copy. > > People using Calcite need to understand that adding a new operator in the > Rex/Rel layer is easy; as easy as adding a function. But plumbing it into > the parser, validator and type system may be more difficult. We can > communicate that by adding examples, and we can keep all of the contributed > functions/operators working by providing a good test framework. > > > Add support for the DuckDB integer division operator // > > ------------------------------------------------------- > > > > Key: CALCITE-7270 > > URL: https://issues.apache.org/jira/browse/CALCITE-7270 > > Project: Calcite > > Issue Type: Improvement > > Components: core > > Affects Versions: 1.41.0 > > Reporter: Mihai Budiu > > Priority: Minor > > Labels: pull-request-available > > > > SQL dialects treat DIVISION in different ways: in some dialects division > by 0 produces an exception, while in other dialects (e.q. sqlite) it > produces NULL. > > These are really two different operators with the same name. I think > they should be represented by different operations in the IR: e.g., DIVIDE > and SAFE_DIVIDE. > > This is reminiscent to the CHECKED arithmetic operations introduced in > [CALCITE-6685], and the solution could be similar: in that issue whether an > ADD operation is checked or unchecked is a property of SqlConformance. > Similarly, we could add a boolean flag to SqlConformance indicating whether > division is safe or not and a visitor that will rewrite DIVIDE to > SAFE_DIVIDE when necessary. > > Spawn from [CALCITE-7145] > > I am happy to assign this to myself if people agree. > > > > -- > This message was sent by Atlassian Jira > (v8.20.10#820010) >
