X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/bef56b9a22efac9ce73006623080e84a0b57f243..79a9d03d3470ef013a908051a2bccddc680ecb5c:/sdk/go/arvados/config.go diff --git a/sdk/go/arvados/config.go b/sdk/go/arvados/config.go index 6edd18418b..c723be7d10 100644 --- a/sdk/go/arvados/config.go +++ b/sdk/go/arvados/config.go @@ -50,6 +50,11 @@ func (sc *Config) GetCluster(clusterID string) (*Cluster, error) { } } +type RequestLimits struct { + MaxItemsPerResponse int + MultiClusterRequestConcurrency int +} + type Cluster struct { ClusterID string `json:"-"` ManagementToken string @@ -58,6 +63,7 @@ type Cluster struct { HTTPRequestTimeout Duration RemoteClusters map[string]RemoteCluster PostgreSQL PostgreSQL + RequestLimits RequestLimits } type PostgreSQL struct { @@ -192,6 +198,20 @@ func (np *NodeProfile) ServicePorts() map[ServiceName]string { } } +func (h RequestLimits) GetMultiClusterRequestConcurrency() int { + if h.MultiClusterRequestConcurrency == 0 { + return 4 + } + return h.MultiClusterRequestConcurrency +} + +func (h RequestLimits) GetMaxItemsPerResponse() int { + if h.MaxItemsPerResponse == 0 { + return 1000 + } + return h.MaxItemsPerResponse +} + type SystemServiceInstance struct { Listen string TLS bool