diff --git a/conf/defaults.ini b/conf/defaults.ini index f037ec0de10..d26ea453e3f 100644 --- a/conf/defaults.ini +++ b/conf/defaults.ini @@ -429,6 +429,11 @@ default_home_dashboard_path = # Upper limit of data sources that Grafana will return. This limit is a temporary configuration and it will be deprecated when pagination will be introduced on the list data sources API. datasource_limit = 5000 +# Number of queries to be executed concurrently. Only for the datasource supports concurrency. +# For now only Loki and InfluxDB (with influxql) are supporting concurrency behind the feature flags. +# Check datasource documentations for enabling concurrency. +concurrent_query_count = 10 + ################################### SQL Data Sources ##################### [sql_datasources] diff --git a/pkg/setting/setting.go b/pkg/setting/setting.go index 10d3b54289a..ba5fc64f7a8 100644 --- a/pkg/setting/setting.go +++ b/pkg/setting/setting.go @@ -345,6 +345,8 @@ type Cfg struct { // Data sources DataSourceLimit int + // Number of queries to be executed concurrently. Only for the datasource supports concurrency. + ConcurrentQueryCount int // SQL Data sources SqlDatasourceMaxOpenConnsDefault int @@ -1933,6 +1935,7 @@ func (cfg *Cfg) GetContentDeliveryURL(prefix string) (string, error) { func (cfg *Cfg) readDataSourcesSettings() { datasources := cfg.Raw.Section("datasources") cfg.DataSourceLimit = datasources.Key("datasource_limit").MustInt(5000) + cfg.ConcurrentQueryCount = datasources.Key("concurrent_query_count").MustInt(10) } func (cfg *Cfg) readSqlDataSourceSettings() {