|
93 | 93 | #include "runtime/small_file_mgr.h" |
94 | 94 | #include "runtime/stream_load/new_load_stream_mgr.h" |
95 | 95 | #include "runtime/stream_load/stream_load_executor.h" |
| 96 | +#include "runtime/stream_load/stream_load_recorder_manager.h" |
96 | 97 | #include "runtime/thread_context.h" |
97 | 98 | #include "runtime/user_function_cache.h" |
98 | 99 | #include "runtime/workload_group/workload_group_manager.h" |
@@ -392,6 +393,10 @@ Status ExecEnv::_init(const std::vector<StorePath>& store_paths, |
392 | 393 | return st; |
393 | 394 | } |
394 | 395 |
|
| 396 | + // should start after storage_engine->open() |
| 397 | + _stream_load_recorder_manager = new StreamLoadRecorderManager(); |
| 398 | + _stream_load_recorder_manager->start(); |
| 399 | + |
395 | 400 | // create internal workload group should be after storage_engin->open() |
396 | 401 | RETURN_IF_ERROR(_create_internal_workload_group()); |
397 | 402 | _workload_sched_mgr = new WorkloadSchedPolicyMgr(); |
@@ -765,6 +770,7 @@ void ExecEnv::destroy() { |
765 | 770 | SAFE_STOP(_group_commit_mgr); |
766 | 771 | // _routine_load_task_executor should be stopped before _new_load_stream_mgr. |
767 | 772 | SAFE_STOP(_routine_load_task_executor); |
| 773 | + SAFE_STOP(_stream_load_recorder_manager); |
768 | 774 | // stop workload scheduler |
769 | 775 | SAFE_STOP(_workload_sched_mgr); |
770 | 776 | // stop pipline step 2, cgroup execution |
@@ -831,6 +837,7 @@ void ExecEnv::destroy() { |
831 | 837 | SAFE_DELETE(_file_meta_cache); |
832 | 838 | SAFE_DELETE(_group_commit_mgr); |
833 | 839 | SAFE_DELETE(_routine_load_task_executor); |
| 840 | + SAFE_DELETE(_stream_load_recorder_manager); |
834 | 841 | // _stream_load_executor |
835 | 842 | SAFE_DELETE(_function_client_cache); |
836 | 843 | SAFE_DELETE(_streaming_client_cache); |
|
0 commit comments