siddharthteotia commented on a change in pull request #8105: URL: https://github.com/apache/pinot/pull/8105#discussion_r797303905
########## File path: pinot-core/src/main/java/org/apache/pinot/core/transport/QueryRouter.java ########## @@ -119,22 +120,31 @@ public AsyncQueryResponse submitQuery(long requestId, String rawTableName, ServerRoutingInstance serverRoutingInstance = entry.getKey(); ServerChannels serverChannels = serverRoutingInstance.isTlsEnabled() ? _serverChannelsTls : _serverChannels; try { - serverChannels.sendRequest(rawTableName, asyncQueryResponse, serverRoutingInstance, entry.getValue(), - timeoutMs); + serverChannels + .sendRequest(rawTableName, asyncQueryResponse, serverRoutingInstance, entry.getValue(), timeoutMs); asyncQueryResponse.markRequestSubmitted(serverRoutingInstance); + } catch (TimeoutException e) { + _brokerMetrics.addMeteredTableValue(rawTableName, BrokerMeter.REQUEST_CHANNEL_LOCK_TIMEOUT_EXCEPTIONS, 1); Review comment: There are 3 sendRequest() in ServerChannels. - public API at ServerChannels level - internal API at ServerChannel level where lock is attempted - internal API called by previous one which is invoked after lock is acquired The one that will throw the Timeout exception while waiting to acquire channel lock is the 2nd one. If for some reason, 3rd one throws TimeoutException as well or let's say someone makes a code change for it to throw TimeoutException, we won't be able to distinguish the reason here because we are not checking the message. -- 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