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)

Reply via email to