Skip to main content

Global Variables

For advanced users, a globalVariables section can also be declared. This is an optional section that allows values to be specified for SingleStoreDB engine variables.

...
globalVariables:
  snapshots_to_keep: "6"
  transaction_buffer: "8m"
  default_partitions_per_leaf: "4"

Refer to Engine Variables and List of Engine Variables documentation for more information about engine variables, global variables, and when to use them.

As of Operator 1.2.1, nearly all engine variables are supported except for:

  • bottomless_storage_location

  • cloud_permissions

  • cluster_name

  • enable_bottomless

  • enable_sites

  • expected_leaf_core_count

  • redundancy_level

  • sync_permissions

Refer to the List of Engine Variables for more information.

Note

If it is not overridden in the globalVariables section, the Operator will set default_partitions_per_leaf to a value equal to the height multiplied by the vCPU cores per unit.

Both aggregatorSpec and leafSpec-specific globalVariables sections may be declared. The optional spec.aggregatorSpec and spec.leafSpec sections in the sdb-cluster.yaml file allow non-sync variables for aggregators and leaf nodes to be specified separately.

aggregatorSpec:
  ...
  globalVariables:
    snapshots_to_keep: "4"

...
leafSpec:
  ...
  globalVariables:
    snapshots_to_keep: "5"

Once the sync and non-sync variables are set via spec.globalVarialbes, they are applied across the entire cluster.

  • All variables set via spec.aggregatorSpec.globalVariables are applied to all pods in Master Aggregator and child aggregators.

  • All variables set via spec.leafSpec.globalVariables are applied to all pods in leaf nodes.

Include only non-sync variables in spec.aggregatorSpec.globalVariables and spec.leafSpec.globalVariables.

Non-sync variables defined in spec.aggregatorSpec.globalVariables and spec.leafSpec.globalVariables override the same variables defined in spec.globalVariables.