WITH replica_counts AS (
SELECT
replica,
COUNT(*) AS replica_count
FROM (
SELECT unnest(replicas) AS replica
FROM yb_tablet_metadata
) r
GROUP BY replica
),
leader_counts AS (
SELECT
leader,
COUNT(*) AS leader_count
FROM yb_tablet_metadata
GROUP BY leader
)
SELECT
s.host || ':' || s.port AS node,
s.cloud,
s.region,
s.zone,
COALESCE(l.leader_count, 0) AS leader_count,
COALESCE(r.replica_count, 0) AS replica_count
FROM yb_servers() s
LEFT JOIN leader_counts l
ON l.leader = s.host || ':' || s.port
LEFT JOIN replica_counts r
ON r.replica = s.host || ':' || s.port
ORDER BY leader_count DESC, replica_count DESC;