Class LazyThriftResult

java.lang.Object
com.databricks.jdbc.api.impl.LazyThriftResult
All Implemented Interfaces:
IExecutionResult

public class LazyThriftResult extends Object implements IExecutionResult
  • Constructor Details

  • Method Details

    • getObject

      public Object getObject(int columnIndex) throws DatabricksSQLException
      Gets the value at the specified column index for the current row.
      Specified by:
      getObject in interface IExecutionResult
      Parameters:
      columnIndex - the zero-based column index
      Returns:
      the value at the specified column
      Throws:
      DatabricksSQLException - if the result is closed, cursor is invalid, or column index is out of bounds
    • getCurrentRow

      public long getCurrentRow()
      Gets the current row index (0-based). Returns -1 if before the first row.
      Specified by:
      getCurrentRow in interface IExecutionResult
      Returns:
      the current row index
    • next

      public boolean next() throws DatabricksSQLException
      Moves the cursor to the next row. Fetches additional data from server if needed.
      Specified by:
      next in interface IExecutionResult
      Returns:
      true if there is a next row, false if at the end
      Throws:
      DatabricksSQLException - if an error occurs while fetching data
    • hasNext

      public boolean hasNext()
      Checks if there are more rows available without advancing the cursor.
      Specified by:
      hasNext in interface IExecutionResult
      Returns:
      true if there are more rows, false otherwise
    • close

      public void close()
      Closes this result and releases associated resources.
      Specified by:
      close in interface IExecutionResult
    • getRowCount

      public long getRowCount()
      Gets the number of rows in the current batch.
      Specified by:
      getRowCount in interface IExecutionResult
      Returns:
      the number of rows in the current batch
    • getChunkCount

      public long getChunkCount()
      Gets the chunk count. Always returns 0 for thrift columnar results.
      Specified by:
      getChunkCount in interface IExecutionResult
      Returns:
      0 (thrift results don't use chunks like Arrow)
    • getTotalRowsFetched

      public long getTotalRowsFetched()
      Gets the total number of rows fetched from the server so far. This is different from getRowCount() which returns current batch size.
      Returns:
      the total number of rows fetched from the server
    • isCompletelyFetched

      public boolean isCompletelyFetched()
      Checks if all data has been fetched from the server.
      Returns:
      true if all data has been fetched (either reached end or maxRows limit)