diff --git a/server/grpc.go b/server/grpc.go index f50c9ac80..f7fe1192c 100644 --- a/server/grpc.go +++ b/server/grpc.go @@ -215,13 +215,6 @@ func (h *GRPCHandler) QueryPQL(req *pb.QueryPQLRequest, stream pb.Pilosa_QueryPQ resp, err := h.api.Query(stream.Context(), &query) durQuery := time.Since(t) - err = stream.SendHeader(metadata.New(map[string]string{ - "duration": strconv.Itoa(int(durQuery)), - })) - if err != nil { - return errors.Wrap(err, "sending header") - } - // TODO: what about resp.CollumnAttrSets? if err != nil { return errToStatusError(err) @@ -240,6 +233,13 @@ func (h *GRPCHandler) QueryPQL(req *pb.QueryPQLRequest, stream pb.Pilosa_QueryPQ return errors.Wrap(err, "wrapping as type ToRowser") } + err = stream.SendHeader(metadata.New(map[string]string{ + "duration": strconv.Itoa(int(durQuery)), + })) + if err != nil { + return errors.Wrap(err, "sending header") + } + t = time.Now() if err := newDurationRowser(toRowser, durQuery).ToRows(stream.Send); err != nil { return errToStatusError(err)