Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
JDK 1.8 introduced methods exposing updateCount and maxRows as long values, where previously they were int values. The methods are:
- long Statement.executeLargeUpdate(String)
- long Statement.getLargeUpdateCount()
- long Statement.getLargeMaxRows()
- void Statement.setLargeMaxRows(long)
AvaticaStatement should implement these methods.
This will require changing corresponding fields: ResultSetResponse.updateCount, PrepareAndExecuteRequest.maxRowCount, ExecuteRequest.maxRowCount, PrepareRequest.maxRowCount. Also FetchRequest.offset.
But note that Statement.setFetchSize(int) and .getFetchSize() remain int methods, and FetchRequest.fetchMaxRowCount remains an int.
JdbcMeta should use these methods in the underlying JDBC driver, and if they throw UnsupportedOperationException, fall back to the int version.
Attachments
Issue Links
- relates to
-
CALCITE-705 DML in Avatica, and split Execute out from Fetch request
- Closed