Hey Kevin, I hope I'm not replying here too late.
The best docs on this are in the "SolrCloud Distributed Requests" page [1]. In short though - by default Solr won't have any preference, it does "just" a round-robin or random choice among the healthy replicas for each shard. Users may provide a "shards.preference" parameter to tell Solr to prefer replicas meeting various criteria, but there's no default value for that. In terms of the CPU you're observing in your perf test - maybe your perf driver is specifying a "shards.preference" param that prioritizes PULL replicas? Best, Jason [1] https://solr.apache.org/guide/solr/latest/deployment-guide/solrcloud-distributed-requests.html#shards-preference-parameter On Thu, Aug 15, 2024 at 5:21 PM Kevin Liang (BLOOMBERG/ 919 3RD A) <klian...@bloomberg.net> wrote: > > Hello, > > Given a mix of TLOG/PULL nodes in our solr cloud, the behavior I'm observing > from metrics is that CPU load is high for the leader TLOG (indexing) and the > PULL nodes (read queries) however for the most part the other TLOG nodes > remain very underutilized by comparison. My understanding is that TLOG nodes > replicate the same way PULL nodes do (+ transaction log), so they should also > be available to service read queries no? I'm wondering if anyone knows how > the leader distributes read queries, as I wasn't able to find much in the way > of documentation. Thanks > > -Kevin