diff --git a/be/src/service/internal_service.cpp b/be/src/service/internal_service.cpp index b0c8d44de75a61..aee46ae6a4d75d 100644 --- a/be/src/service/internal_service.cpp +++ b/be/src/service/internal_service.cpp @@ -395,6 +395,13 @@ void PInternalServiceImpl::tablet_writer_cancel(google::protobuf::RpcController* Status PInternalServiceImpl::_exec_plan_fragment(const std::string& ser_request, PFragmentRequestVersion version, bool compact) { + // Sometimes the BE do not receive the first heartbeat message and it receives request from FE + // If BE execute this fragment, it will core when it wants to get some property from master info. + if (ExecEnv::GetInstance()->master_info() == nullptr) { + return Status::InternalError( + "Have not receive the first heartbeat message from master, not ready to provide " + "service"); + } if (version == PFragmentRequestVersion::VERSION_1) { // VERSION_1 should be removed in v1.2 TExecPlanFragmentParams t_request;