mqliang commented on pull request #8083:
URL: https://github.com/apache/pinot/pull/8083#issuecomment-1023919963


   > The problem with manual instrumentation like this is every Pinot user has 
to pay for it whether they want to use it or not.
   
   How about time-out when waiting lock but does not emit metric? In this way, 
it will not bring overhead for "happy path".
   
   * for "happy" queries, they will acquire the lock before the time-out, no 
overhead for them
   * for "unhappy" queries, they will get an interruption from timer when 
time-out elapsed, then remove themself from the lock waiting queue
   
   > there are better ways to pinpoint lock contention, with more context and 
at much lower overhead than recording expensive metrics
   
   > ServerChannels should be reworked to avoid this.
   
   Agree that ServerChannels should be reworked. I am considering  gRPC or 
HTTP/2, which can split large request into small chunks, and 
multiplex/interleave multiple requests on a single TCP connection. Otherwise,  
even if we alleviate the lock contention, "head line of blocking" effect  is 
hard to resolve as long as we must write multiple requests to channel 
sequentially.


-- 
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: commits-unsubscr...@pinot.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to