wumeibanfa commented on issue #53798:
URL: https://github.com/apache/doris/issues/53798#issuecomment-3171894520

   Hello, I would like to try this task.
   
   I have a proposal: we can add `int64_t* cur_job_id_ptr`,  and `int64_t 
submit_job_id`, to `io::DownloadFileMeta`.  
   - `cur_job_id_ptr` points to the current `_cur_job_id`.  
   - `submit_job_id` is `_cur_job_id` at the moment when warmup triggers a 
submission to `CloudWarmUpManager.submit_download_tasks`.
   
   When `cancel` occurs, `CloudWarmUpManager.clear_job` will always be called, 
and `_cur_job_id` will be set to `0`. At this point, we can check 
`submit_job_id== *cur_job_id_ptr` inside both 
`FileCacheBlockDownloader.download_blocks` and 
`FileCacheBlockDownloader.download_segment_file` to determine whether a cancel 
has happened.
   
   If a cancel happens, at most only one `tablet` will be submitted, and at 
most there will be a single wait for one `one_single_task_size`-byte read in 
`FileCacheBlockDownloader.download_segment_file`.
   
   Do you think this approach is feasible? I look forward to your reply, thank 
you.
   


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