xiong duan created CALCITE-6462:
-----------------------------------
Summary: VolcanoPlanner internal valid may throw exception when
log trace is enabled
Key: CALCITE-6462
URL: https://issues.apache.org/jira/browse/CALCITE-6462
Project: Calcite
Issue Type: Bug
Components: core
Affects Versions: 1.37.0
Reporter: xiong duan
Unit test in JdbcAdapterTest:
{code:java}
@Test void testAioob_5() {
CalciteAssert.model(JdbcTest.SCOTT_MODEL)
.query("select *\n"
+ "from scott.emp e left join scott.dept d\n"
+ "on 'job' in (select job from scott.bonus b)")
.runs();
}{code}
Exceptions:
{code:java}
RelSubset [rel#108:RelSubset#7.ENUMERABLE.[]] has wrong best cost {1254.5 rows,
340.5 cpu, 0.0 io}. Correct cost is {1752.0 rows, 337.5 cpu, 0.0 io}{code}
The best RelNode and the bestCode is different.
When logĀ trace is enabled, Tte code will be run:
{code:java}
if (LOGGER.isDebugEnabled()) {
assert isValid(Litmus.THROW);
}{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)