Robert Yokota created CALCITE-3324:
--------------------------------------
Summary: Infinite loop when calling DDL from remote Avatica driver
to LocalService wrapping CalciteMetaImpl
Key: CALCITE-3324
URL: https://issues.apache.org/jira/browse/CALCITE-3324
Project: Calcite
Issue Type: Bug
Affects Versions: 1.20.0
Reporter: Robert Yokota
I encountered an infinite loop when submitting DDL from a remote Avatica driver
(using sqlline) against a LocalService wrapping CalciteMetaImpl.
I was able to debug the issue and verified a fix.
The problem was that in CalciteMetaImpl.prepareAndExecute, the updateCount is
not being passed to the MetaResultSetImpl constructor. Instead, the
updateCount is always set to -1. This incorrectly instructs the remote Avatica
driver to fetch results when there aren't any, which causes it to loop.
By fixing the CalciteMetaImpl.prepareAndExecute method to set the updateCount
in MetaResultSetImpl, I was able to fix the infinite loop.
--
This message was sent by Atlassian Jira
(v8.3.2#803003)