gortiz commented on PR #19019:
URL: https://github.com/apache/pinot/pull/19019#issuecomment-5032763267

   > QueryExecutionContext is shared by multiple QueryThreadContext. How do we 
prevent the same metadata keeps being overridden? Should we design some hook to 
allow aggregating the metadata
   
   I tried to keep things simple for now. Any thread can set this and they need 
to be coordinated. As you said, if two different places set a value for the 
same key only one of them will win. That seems appropriate and the same as we 
do with any other response (ie we can override other flags like the number of 
segments being pruned).
   
   Most of the metadata will be strings, so there is not much point to 
aggregate them. What we can do is create a way to append them, but TBH I think 
this is not that important. Devs can, instead, use unique keys.
   
   > How do we propagate the worker metadata back to downstream?
   This API, at least right now, can only be used by the broker, so there is no 
way for a server worker to report its feedback. That would require opening a 
new feedback mechanism or using the new pushed stats.
   
   So to be clear, only code in the broker can do that. I think it will be 
mostly used from Calcite rules that want to provide feedback.
   
   > What is the difference between this vs stage stats?
   
   They don't have much in common. This is something we can use to provide 
feedback on changes the broker has made to the query or warnings/hints. 


-- 
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