refactor: accelerate jira changelog collecting (#1967)
diff --git a/plugins/jira/tasks/changelog_collector.go b/plugins/jira/tasks/changelog_collector.go
index a2bc4df..bd3f37b 100644
--- a/plugins/jira/tasks/changelog_collector.go
+++ b/plugins/jira/tasks/changelog_collector.go
@@ -75,11 +75,12 @@
},
Table: RAW_CHANGELOG_TABLE,
},
- ApiClient: data.ApiClient,
- PageSize: 50,
- Incremental: true,
- Input: iterator,
- UrlTemplate: "api/3/issue/{{ .Input.IssueId }}/changelog",
+ ApiClient: data.ApiClient,
+ PageSize: 50,
+ Incremental: true,
+ GetTotalPages: GetTotalPagesFromResponse,
+ Input: iterator,
+ UrlTemplate: "api/3/issue/{{ .Input.IssueId }}/changelog",
Query: func(reqData *helper.RequestData) (url.Values, error) {
query := url.Values{}
query.Set("startAt", fmt.Sprintf("%v", reqData.Pager.Skip))
diff --git a/plugins/jira/tasks/issue_extractor.go b/plugins/jira/tasks/issue_extractor.go
index d82c3c4..17882df 100644
--- a/plugins/jira/tasks/issue_extractor.go
+++ b/plugins/jira/tasks/issue_extractor.go
@@ -124,6 +124,9 @@
issue.StdType = getStdType(issue.Type)
issue.StdStatus = getStdStatus(issue.StatusKey)
issue.SpentMinutes = issue.AggregateEstimateMinutes - issue.RemainingEstimateMinutes
+ if len(changelogs) < 100 {
+ issue.ChangelogUpdated = &row.CreatedAt
+ }
results = append(results, issue)
for _, worklog := range worklogs {
results = append(results, worklog)