MCPcopy Create free account
hub / github.com/apache/iotdb-client-go / ExecuteAggregationQuery

Method ExecuteAggregationQuery

client/session.go:587–618  ·  view source on GitHub ↗
(paths []string, aggregations []common.TAggregationType,
	startTime *int64, endTime *int64, interval *int64,
	timeoutMs *int64,
)

Source from the content-addressed store, hash-verified

585}
586
587func (s *Session) ExecuteAggregationQuery(paths []string, aggregations []common.TAggregationType,
588 startTime *int64, endTime *int64, interval *int64,
589 timeoutMs *int64,
590) (*SessionDataSet, error) {
591 request := rpc.TSAggregationQueryReq{
592 SessionId: s.sessionId, StatementId: s.requestStatementId, Paths: paths,
593 Aggregations: aggregations, StartTime: startTime, EndTime: endTime, Interval: interval, FetchSize: &s.config.FetchSize, Timeout: timeoutMs,
594 }
595 if resp, err := s.client.ExecuteAggregationQueryV2(context.Background(), &request); err == nil {
596 if statusErr := VerifySuccess(resp.Status); statusErr == nil {
597 return NewSessionDataSet("", resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, *resp.QueryId, s.requestStatementId, s.client, s.sessionId, resp.QueryResult_, resp.IgnoreTimeStamp != nil && *resp.IgnoreTimeStamp, timeoutMs, *resp.MoreData, s.config.FetchSize, s.config.TimeZone, s.timeFactor, resp.GetColumnIndex2TsBlockColumnIndexList())
598 } else {
599 return nil, statusErr
600 }
601 } else {
602 if s.reconnect() {
603 request.SessionId = s.sessionId
604 resp, err = s.client.ExecuteAggregationQueryV2(context.Background(), &request)
605 if err == nil {
606 if resp == nil {
607 return nil, fmt.Errorf("received nil response after reconnect")
608 }
609 if statusErr := VerifySuccess(resp.Status); statusErr == nil {
610 return NewSessionDataSet("", resp.Columns, resp.DataTypeList, resp.ColumnNameIndexMap, *resp.QueryId, s.requestStatementId, s.client, s.sessionId, resp.QueryResult_, resp.IgnoreTimeStamp != nil && *resp.IgnoreTimeStamp, timeoutMs, *resp.MoreData, s.config.FetchSize, s.config.TimeZone, s.timeFactor, resp.GetColumnIndex2TsBlockColumnIndexList())
611 } else {
612 return nil, statusErr
613 }
614 }
615 }
616 return nil, err
617 }
618}
619
620func (s *Session) ExecuteAggregationQueryWithLegalNodes(paths []string, aggregations []common.TAggregationType,
621 startTime *int64, endTime *int64, interval *int64,

Callers

nothing calls this directly

Calls 5

reconnectMethod · 0.95
VerifySuccessFunction · 0.85
NewSessionDataSetFunction · 0.85

Tested by

no test coverage detected