system.clusters

Contains information about clusters available in the config file and the servers in them.

Columns:

  • cluster (String) — The cluster name.
  • shard_num (UInt32) — The shard number in the cluster, starting from 1.
  • shard_weight (UInt32) — The relative weight of the shard when writing data.
  • replica_num (UInt32) — The replica number in the shard, starting from 1.
  • host_name (String) — The host name, as specified in the config.
  • host_address (String) — The host IP address obtained from DNS.
  • port (UInt16) — The port to use for connecting to the server.
  • user (String) — The name of the user for connecting to the server.
  • errors_count (UInt32) - number of times this host failed to reach replica.
  • estimated_recovery_time (UInt32) - seconds left until replica error count is zeroed and it is considered to be back to normal.

Please note that errors_count is updated once per query to the cluster, but estimated_recovery_time is recalculated on-demand. So there could be a case of non-zero errors_count and zero estimated_recovery_time, that next query will zero errors_count and try to use replica as if it has no errors.

See also

Example

  1. :) SELECT * FROM system.clusters LIMIT 2 FORMAT Vertical;
  1. Row 1:
  2. ──────
  3. cluster: test_cluster
  4. shard_num: 1
  5. shard_weight: 1
  6. replica_num: 1
  7. host_name: clickhouse01
  8. host_address: 172.23.0.11
  9. port: 9000
  10. is_local: 1
  11. user: default
  12. default_database:
  13. errors_count: 0
  14. estimated_recovery_time: 0
  15. Row 2:
  16. ──────
  17. cluster: test_cluster
  18. shard_num: 1
  19. shard_weight: 1
  20. replica_num: 2
  21. host_name: clickhouse02
  22. host_address: 172.23.0.12
  23. port: 9000
  24. is_local: 0
  25. user: default
  26. default_database:
  27. errors_count: 0
  28. estimated_recovery_time: 0
  29. 2 rows in set. Elapsed: 0.002 sec.

Original article