kamalcph opened a new pull request, #16602:
URL: https://github.com/apache/kafka/pull/16602

   To find the offset for a given timestamp, ListOffsets API is used by the 
client. When the topic is enabled with remote storage, then we have to fetch 
the remote indexes such as offset-index and time-index to serve the query. 
Also, the ListOffsets request can contain the query for multiple 
topics/partitions.
   
   The time taken to read the indexes from remote storage is non-deterministic 
and the query is handled by the request-handler threads. If there are multiple 
LIST_OFFSETS queries and most of the request-handler threads are busy in 
reading the data from remote storage, then the other high-priority requests 
such as PRODUCE and FETCH won't be handled and in worst-case can be dropped.
   
   In this patch, we have introduced a delayed operation for remote 
list-offsets call. If the offsets need to be searched in the remote-storage, 
then the request-handler threads will pass-on the request to the 
remote-log-reader threads. And, the request gets handled in asynchronous 
fashion.
   
   Covered the patch with unit and integration tests.
   
   ### Committer Checklist (excluded from commit message)
   - [ ] Verify design and implementation 
   - [ ] Verify test coverage and CI build status
   - [ ] Verify documentation (including upgrade notes)
   


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

Reply via email to