mirror of
https://gitee.com/milvus-io/milvus.git
synced 2024-12-02 11:59:00 +08:00
26f06dd732
Signed-off-by: SimFG <bang.fu@zilliz.com>
38 lines
930 B
Go
38 lines
930 B
Go
package segments
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/milvus-io/milvus/internal/proto/internalpb"
|
|
"github.com/milvus-io/milvus/internal/proto/segcorepb"
|
|
"github.com/milvus-io/milvus/internal/util/funcutil"
|
|
)
|
|
|
|
type cntReducer struct{}
|
|
|
|
func (r *cntReducer) Reduce(ctx context.Context, results []*internalpb.RetrieveResults) (*internalpb.RetrieveResults, error) {
|
|
cnt := int64(0)
|
|
for _, res := range results {
|
|
c, err := funcutil.CntOfInternalResult(res)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cnt += c
|
|
}
|
|
return funcutil.WrapCntToInternalResult(cnt), nil
|
|
}
|
|
|
|
type cntReducerSegCore struct{}
|
|
|
|
func (r *cntReducerSegCore) Reduce(ctx context.Context, results []*segcorepb.RetrieveResults) (*segcorepb.RetrieveResults, error) {
|
|
cnt := int64(0)
|
|
for _, res := range results {
|
|
c, err := funcutil.CntOfSegCoreResult(res)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
cnt += c
|
|
}
|
|
return funcutil.WrapCntToSegCoreResult(cnt), nil
|
|
}
|