The jdbc adapter includes a node and rule for Calc ( JdbcCalc a JdbcCalcRule ). Calc is an operation that is introduced only later in the planner to optimise certain code generation and it is not needed for the jdbc adapter.
As it stands the rule JdbcCalcRule is never triggered because the Jdbc convention rules are applied before the Calc node is introduced in the plan. However, if a user try to use a custom rule set they might end up with a JdbcCalc which introduces problems like the one described in https://issues.apache.org/jira/browse/CALCITE-4905 .
Because JdbcCalc is not an optimisation needed for jdbc anyway we should deprecate JdbcCalc and its respective rule JdbcCalcRule. The rule should also be removed from JdbcRules.rules
See ticket https://issues.apache.org/jira/browse/CALCITE-4905 for a discussion around deprecating JdbcCalc