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.

  • Prior to Operator 1.2.0, the supported engine variables are:

    • default_partitions_per_leaf

    • columnstore_segment_rows

    • columnstore_flush_bytes

    • columnstore_window_size

    • transaction_buffer

    • snapshot_trigger_size

    • minimal_disk_space

    • pipelines_max_concurrent

    • auditlog_level

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

    • redundancy_level

    • sync_permissions

    • local_file_system_access_restricted

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

    • attach_rebalance_delay_seconds

    • auto_attach

    • cluster_name

    • default_user_require_ssl

    • leaf_failure_detection

    • redundancy_level

    • sync_permissions

  • Refer to the List of Engine Variables for more information.

Notice

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.