fix: limit the max rate limit = 200 for gitlab (#4175)
diff --git a/plugins/gitlab/tasks/api_client.go b/plugins/gitlab/tasks/api_client.go
index 1b71374..da28130 100644
--- a/plugins/gitlab/tasks/api_client.go
+++ b/plugins/gitlab/tasks/api_client.go
@@ -19,14 +19,13 @@
import (
"fmt"
- "github.com/apache/incubator-devlake/errors"
"net/http"
"strconv"
"time"
- "github.com/apache/incubator-devlake/plugins/gitlab/models"
-
+ "github.com/apache/incubator-devlake/errors"
"github.com/apache/incubator-devlake/plugins/core"
+ "github.com/apache/incubator-devlake/plugins/gitlab/models"
"github.com/apache/incubator-devlake/plugins/helper"
)
@@ -54,7 +53,11 @@
return 0, 0, errors.Default.Wrap(err, "failed to parse RateLimit-Limit header")
}
// seems like gitlab rate limit is on minute basis
- return rateLimit, 1 * time.Minute, nil
+ if rateLimit > 200 {
+ return 200, 1 * time.Minute, nil
+ } else {
+ return rateLimit, 1 * time.Minute, nil
+ }
},
}
asyncApiClient, err := helper.CreateAsyncApiClient(
diff --git a/plugins/gitlab/tasks/pipeline_collector.go b/plugins/gitlab/tasks/pipeline_collector.go
index a9f3a0a..9ab0cc0 100644
--- a/plugins/gitlab/tasks/pipeline_collector.go
+++ b/plugins/gitlab/tasks/pipeline_collector.go
@@ -46,7 +46,6 @@
err = collectorWithState.InitCollector(helper.ApiCollectorArgs{
RawDataSubTaskArgs: *rawDataSubTaskArgs,
ApiClient: data.ApiClient,
- Concurrency: 5,
PageSize: 100,
Incremental: incremental,
UrlTemplate: "projects/{{ .Params.ProjectId }}/pipelines",