Cluster

These are the properties that be set at the cluster level

Cluster level properties can be retrieved using the following controller API's

  1. List cluster-level configurations

get
List Cluster Config

http://<controller>:<port>/cluster/configs'
Lists all the configurations set at the cluster level
Request
Response
Request
Response
200: OK
{
"allowParticipantAutoJoin": "true",
"enable.case.insensitive": "false",
"pinot.broker.enable.query.limit.override": "false",
"default.hyperloglog.log2m": "8"
}

Config Property

Description

allowParticipantAutoJoin

This is a Helix Property that allows any Pinot Server/Broker/Controller to automatically join the cluster. This is true by default. Operators can set this to false for more control. If you set this to false, you will have to explicitly invoke /Instance/addInstance API. This property is checked when a Pinot node starts and has no effect once the node is connected to the cluster.

enable.case.insensitive

By default, Pinot queries are case sensitive. Table name, column name, etc must be case sensitive. This is because the schema is still optional for batch tables. If you have a schema, you can set this to true and pinot will accept any case for table names and columns. This property is applicable to the broker and is read only when the broker starts. Changing this property will required broker to be restarted.

pinot.broker.enable.query.limit.override

This allows operators to protect the Pinot cluster against bad queries with large limits. By setting this to true, if Pinot broker override query limit when it is larger than broker config:pinot.broker.query.response.limit (Default is 2147483647).E.g. If setpinot.broker.query.response.limit=1000 in Broker conf, then querySELECT * FROM myTable LIMIT 25000will be override to SELECT * FROM myTable LIMIT 1000.

default.hyperloglog.log2m

This is a special config to override for hyperloglog that is used for approximate distinct count. Default value is 8.