xiangfu0 commented on PR #19568:
URL: https://github.com/apache/pinot/pull/19568#issuecomment-5786385491

   Follow-up in `06e0b02`, from offline review: the mode is now a **live 
cluster config** and the per-query `protoSegmentList` option is **gone**.
   
   The reasoning: the query option was the only way to change the encoding 
without restarting a broker, but asking clients to change their queries is 
harder than restarting brokers, so it was the wrong escape hatch. 
`ProtoSegmentListPredicate` now also listens on cluster config for 
`pinot.broker.mse.proto.segment.list`. Precedence is cluster config, then the 
static broker config, then `SAFE`; clearing the cluster-config key restores the 
static broker config, matching what `MultiStageQueryThrottler` does for its 
live config. A value that is not a mode is ignored with a warning rather than 
moving a cluster off the mode an operator chose. The server versions are now 
watched whatever the static mode is, since cluster config can select `SAFE` at 
runtime.
   
   This also changes what I wrote in two resolved threads, so to be explicit: 
the per-query override I described as "staying" is removed, and `NEVER` no 
longer needs a restart. Nothing can override the mode per query any more, so 
every server of a query is guaranteed to agree on the encoding.
   
   Test-wise this is a net gain: both integration tests now switch the encoding 
through cluster config instead of a query option — the logical-table one 
through the controller's `/cluster/configs` endpoint, restoring `SAFE` 
afterwards since that cluster is shared — so they cover the live reload path 
end to end as well as the encodings themselves. `ProtoSegmentListPredicateTest` 
is up to 18 tests with the cluster-config precedence cases.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to