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]
