This is an automated email from the ASF dual-hosted git repository. zhangliang2022 pushed a commit to branch release-v0.12 in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git
commit 968dc41e975826ee0972c1decc42099834a06636 Author: mindlesscloud <[email protected]> AuthorDate: Wed Aug 3 15:03:49 2022 +0800 fix the worklog collecting taking too long (#2662) * fix: fix the worklog collecting taking too long * fix: fix the changelog collecting taking too long --- plugins/jira/tasks/issue_changelog_collector.go | 4 ++-- plugins/jira/tasks/worklog_collector.go | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/plugins/jira/tasks/issue_changelog_collector.go b/plugins/jira/tasks/issue_changelog_collector.go index e6562731..4497f983 100644 --- a/plugins/jira/tasks/issue_changelog_collector.go +++ b/plugins/jira/tasks/issue_changelog_collector.go @@ -57,9 +57,9 @@ func CollectIssueChangelogs(taskCtx core.SubTaskContext) error { dal.From("_tool_jira_board_issues bi"), dal.Join("LEFT JOIN _tool_jira_issues i ON (bi.connection_id = i.connection_id AND bi.issue_id = i.issue_id)"), dal.Join("LEFT JOIN _tool_jira_issue_changelogs c ON (c.connection_id = i.connection_id AND c.issue_id = i.issue_id)"), - dal.Where(`i.updated > i.created AND bi.connection_id = ? AND bi.board_id = ? AND i.std_type != ? `, data.Options.ConnectionId, data.Options.BoardId, "Epic"), + dal.Where("i.updated > i.created AND bi.connection_id = ? AND bi.board_id = ? AND i.std_type != ? ", data.Options.ConnectionId, data.Options.BoardId, "Epic"), dal.Groupby("i.issue_id, i.updated"), - dal.Having("i.updated > max(c.issue_updated) OR max(c.issue_updated) IS NULL"), + dal.Having("i.updated > max(c.issue_updated) OR (max(c.issue_updated) IS NULL AND COUNT(c.changelog_id) > 0)"), } // apply time range if any since := data.Since diff --git a/plugins/jira/tasks/worklog_collector.go b/plugins/jira/tasks/worklog_collector.go index 4d8b0e70..9d4694a8 100644 --- a/plugins/jira/tasks/worklog_collector.go +++ b/plugins/jira/tasks/worklog_collector.go @@ -53,7 +53,7 @@ func CollectWorklogs(taskCtx core.SubTaskContext) error { dal.Join("LEFT JOIN _tool_jira_worklogs wl ON (wl.connection_id = i.connection_id AND wl.issue_id = i.issue_id)"), dal.Where("i.updated > i.created AND bi.connection_id = ? AND bi.board_id = ? ", data.Options.ConnectionId, data.Options.BoardId), dal.Groupby("i.issue_id, i.updated"), - dal.Having("i.updated > max(wl.issue_updated) OR max(wl.issue_updated) IS NULL"), + dal.Having("i.updated > max(wl.issue_updated) OR (max(wl.issue_updated) IS NULL AND COUNT(wl.worklog_id) > 0)"), } // apply time range if any if since != nil {
