TangSiyang2001 commented on code in PR #21611: URL: https://github.com/apache/doris/pull/21611#discussion_r1255309625
########## be/src/io/fs/multi_table_pipe.h: ########## @@ -74,7 +74,7 @@ class MultiTablePipe : public KafkaConsumerPipe { std::atomic<uint64_t> _unplanned_row_cnt {0}; // trigger plan request when exceed threshold std::atomic<uint64_t> _inflight_plan_cnt {0}; // how many plan fragment are executing? std::atomic<bool> _consume_finished {false}; - std::shared_ptr<StreamLoadContext> _ctx; + StreamLoadContext* _ctx; Review Comment: @airborne12 Yes it is, for not using weak_ptr to solve the problem: > Why not use weak_ptr? > Cuz introducing weak_ptr is not so elegant and has lower performance. > MultiTablePipe's life cycle is under control of the StreamLoadContext, it is reasonable to use raw ptr to > provide MultiTablePipe with an access to the current ctx. StreanLoadContext is sure to be released after MultiTablePipe, and will not result in dangling pointer. -- 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: commits-unsubscr...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org