poorbarcode commented on code in PR #19783:
URL: https://github.com/apache/pulsar/pull/19783#discussion_r2103670948


##########
tiered-storage/jcloud/src/main/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/BlobStoreBackedReadHandleImpl.java:
##########
@@ -120,6 +123,7 @@ public CompletableFuture<LedgerEntries> readAsync(long 
firstEntry, long lastEntr
         }
         CompletableFuture<LedgerEntries> promise = new CompletableFuture<>();
         executor.execute(() -> {
+            touch();

Review Comment:
   I think I need to clarify the scenario
   
   | steps/threads | thread: `release idle ledgerHandle` | thread: 
`ledgerHandle.read` |
   | --- | --- | --- |
   | 1 | | `touch()`, which you mentioned 
https://github.com/apache/pulsar/pull/19783#discussion_r2100426346 |
   | 2 | | There are many tasks in the `executor.queue`, append new reading 
task to the tail of the queue |
   | 3 | | The executor dealing with many tasks that were added previously, 
which may cost a lot of time |
   | 4 | check idle state, close `ledgerHandle` |
   | 5 | | the reading task added by step 1 executes, but `ledgerHandle`'s 
state is `closed` now |



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