From cbc5f4f968626adc19c40a05ba851992869404fe Mon Sep 17 00:00:00 2001 From: bigsheeper Date: Fri, 10 Jan 2025 18:09:05 +0800 Subject: [PATCH] fix: Fix remove bulkinsert job command Signed-off-by: bigsheeper --- states/etcd/common/bulkinsert.go | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/states/etcd/common/bulkinsert.go b/states/etcd/common/bulkinsert.go index f095362..d418848 100644 --- a/states/etcd/common/bulkinsert.go +++ b/states/etcd/common/bulkinsert.go @@ -24,14 +24,25 @@ func ListImportJobs(ctx context.Context, cli clientv3.KV, basePath string, filte return nil, nil, err } - return lo.FilterMap(jobs, func(job datapb.ImportJob, idx int) (*datapb.ImportJob, bool) { + resultJobs := make([]*datapb.ImportJob, 0, len(jobs)) + resultKeys := make([]string, 0, len(keys)) + + filterFn := func(job datapb.ImportJob) bool { for _, filter := range filters { if !filter(&job) { - return nil, false + return false } } - return &job, true - }), keys, nil + return true + } + for i, job := range jobs { + if ok := filterFn(job); ok { + resultJobs = append(resultJobs, &jobs[i]) + resultKeys = append(resultKeys, keys[i]) + } + } + + return resultJobs, resultKeys, nil } // ListPreImportTasks list pre-import tasks.