[Bug] Fix bug that BE crash when doing Insert Operation (#3872)
Mainly change: 1. Fix the bug in `update_status(status)` of `PlanFragmentExecutor`. 2. When the FE Coordinator executes `execRemoteFragmentAsync()`, if it finds an RPC error, return a Future with an error code instead of exception. 3. Protect the `_status` in RuntimeState with lock 4. Move the `_runtime_profile` of RuntimeState before the `_obj_pool`, so that the profile will be deconstructed after the object pool. 5. Remove the unused `ObjectPool` param in RuntimeProfile constructor. If I don't remove it, RuntimeProfile will depends on the `_obj_pool` in RuntimeProfile.
This commit is contained in:
@ -552,7 +552,7 @@ void ExecNode::try_do_aggregate_serde_improve() {
|
||||
void ExecNode::init_runtime_profile(const std::string& name) {
|
||||
std::stringstream ss;
|
||||
ss << name << " (id=" << _id << ")";
|
||||
_runtime_profile.reset(new RuntimeProfile(_pool, ss.str()));
|
||||
_runtime_profile.reset(new RuntimeProfile(ss.str()));
|
||||
_runtime_profile->set_metadata(_id);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user