From 355b6d3a9ceb87a2106061cf260a4b3b061a0aa1 Mon Sep 17 00:00:00 2001 From: Kassian Sun Date: Thu, 8 Jun 2023 14:09:37 +0800 Subject: [PATCH] [migration] don't skip bulk error check if count unmatch --- .../index_migration/index_migration.go | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/plugin/task_manager/index_migration/index_migration.go b/plugin/task_manager/index_migration/index_migration.go index ec9af750..e53f6bf5 100644 --- a/plugin/task_manager/index_migration/index_migration.go +++ b/plugin/task_manager/index_migration/index_migration.go @@ -461,15 +461,18 @@ func (p *processor) checkBulkPipelineTaskStatus(bulkTask *task.Task, cfg *migrat ) successDocs = migration_util.GetMapIntValue(bulkLabels, "success_docs") - if !cfg.Target.SkipCountCheck && successDocs != totalDocs { - return true, successDocs, fmt.Errorf("bulk complete but docs count unmatch: %d / %d, invalid docs: [%s] (reasons: [%s]), failure docs: [%s] (reasons: [%s])", successDocs, totalDocs, invalidDocs, invalidReasons, failureDocs, failureReasons) - } - - // successDocs matched but has errors - if bulkTask.Status == task.StatusError { - return true, successDocs, nil + if successDocs != totalDocs { + // check count + if !cfg.Target.SkipCountCheck { + return true, successDocs, fmt.Errorf("bulk complete but docs count unmatch: %d / %d, invalid docs: [%s] (reasons: [%s]), failure docs: [%s] (reasons: [%s])", successDocs, totalDocs, invalidDocs, invalidReasons, failureDocs, failureReasons) + } + // has errors + if bulkTask.Status == task.StatusError { + return true, successDocs, fmt.Errorf("bulk pipeline failed") + } } + // successDocs matched, return ok return true, successDocs, nil }