in client/rpcdataset.go [438:467]
func (s *IoTDBRpcDataSet) fetchResults() (bool, error) {
if s.closed {
return false, errClosed
}
s.rowsIndex = 0
req := rpc.TSFetchResultsReq{
SessionId: s.sessionId,
Statement: s.sql,
FetchSize: s.fetchSize,
QueryId: s.queryId,
IsAlign: true,
Timeout: s.timeoutMs,
}
resp, err := s.client.FetchResults(context.Background(), &req)
if err != nil {
return false, err
}
if err = VerifySuccess(resp.Status); err != nil {
return false, err
}
if !resp.HasResultSet {
s.emptyResultSet = true
} else {
s.queryDataSet = resp.GetQueryDataSet()
}
return resp.HasResultSet, nil
}