This is an automated email from the ASF dual-hosted git repository.

zhangliang2022 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git


The following commit(s) were added to refs/heads/main by this push:
     new ffeac43a9 fix: jira server failed on deleted epic (#5464)
ffeac43a9 is described below

commit ffeac43a9480c44090d592e5dc9a18dcefe841dc
Author: Klesh Wong <[email protected]>
AuthorDate: Wed Jun 14 16:17:43 2023 +0800

    fix: jira server failed on deleted epic (#5464)
---
 backend/plugins/jira/tasks/epic_collector.go | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/backend/plugins/jira/tasks/epic_collector.go 
b/backend/plugins/jira/tasks/epic_collector.go
index 73d897dbe..2404366bf 100644
--- a/backend/plugins/jira/tasks/epic_collector.go
+++ b/backend/plugins/jira/tasks/epic_collector.go
@@ -26,6 +26,7 @@ import (
        "github.com/apache/incubator-devlake/core/errors"
        "github.com/apache/incubator-devlake/core/plugin"
        "github.com/apache/incubator-devlake/helpers/pluginhelper/api"
+       "github.com/apache/incubator-devlake/plugins/jira/models"
 
        "encoding/json"
        "io"
@@ -48,7 +49,11 @@ var CollectEpicsMeta = plugin.SubTaskMeta{
 func CollectEpics(taskCtx plugin.SubTaskContext) errors.Error {
        db := taskCtx.GetDal()
        data := taskCtx.GetData().(*JiraTaskData)
-       epicIterator, err := GetEpicKeysIterator(db, data, 100)
+       batchSize := 100
+       if data.JiraServerInfo.DeploymentType == models.DeploymentServer && 
len(data.JiraServerInfo.VersionNumbers) == 3 && 
data.JiraServerInfo.VersionNumbers[0] <= 8 {
+               batchSize = 1
+       }
+       epicIterator, err := GetEpicKeysIterator(db, data, batchSize)
        if err != nil {
                return err
        }
@@ -96,6 +101,8 @@ func CollectEpics(taskCtx plugin.SubTaskContext) 
errors.Error {
                        }
                        return data.Issues, nil
                },
+               // Jira Server returns 400 if the epic is not found
+               AfterResponse: ignoreHTTPStatus400,
        })
        if err != nil {
                return err

Reply via email to