0AyanamiRei commented on issue #53798:
URL: https://github.com/apache/doris/issues/53798#issuecomment-3116542178

   > 除了新增 RPC 接口之外,我们可以考虑利用现有的 clear job 接口 (关键词 
TWarmUpTabletsRequestType.CLEAR_JOB)。现有 clear job 的逻辑粒度也比较大,一个 tablet 
预热结束才会检查,如果 tablet 很大 cancel 时间依旧很长。我们可以在每个 segment 文件下载好就检查一次。
   
   疑问: `一个 tablet 
预热结束才会检查`,handle_jobs中进行`wait->timed_wait(time)`之前的应该都是cpu操作,负责把一个job划分成不同任务往线程池提交。我认为能够进行检查的间隙应该很短,大部分时间都在等待远端数据的load,这个时间内不能进行检查。
   
   关于利用clear job接口,我的想法是:如果BE收到clear job, 此时download任务正在进行, BE可以依赖这样一个事实 
"cur_job == _pending_job_metas.front()" 
并且直到cur_job的所有预热任务完成为止都不会pop_front,clear 
job可以按照handle_jobs的划分方式依次通知进行download的线程在每个task结束就进行回调,这样就可以实现快速cancel了


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