MCPcopy Create free account
hub / github.com/baidu/tera / LoadTabletsPhaseHandler

Method LoadTabletsPhaseHandler

src/master/split_tablet_procedure.cc:113–126  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

111}
112
113void SplitTabletProcedure::LoadTabletsPhaseHandler(const SplitTabletPhase&) {
114 if (!load_procs_[0] && !load_procs_[1]) {
115 TabletNodePtr node = tablet_->GetTabletNode();
116 // try load tablet at the origin tabletnode considering cache locality
117 load_procs_[0].reset(new LoadTabletProcedure(child_tablets_[0], node, thread_pool_ /*, true*/));
118 load_procs_[1].reset(new LoadTabletProcedure(child_tablets_[1], node, thread_pool_ /*, true*/));
119 PROC_LOG(INFO) << "Generate LoadTablet SubProcedure1: " << load_procs_[0]->ProcId();
120 PROC_LOG(INFO) << "Generate LoadTablet SubProcedure2, " << load_procs_[1]->ProcId();
121 MasterEnv().GetExecutor()->AddProcedure(load_procs_[0]);
122 MasterEnv().GetExecutor()->AddProcedure(load_procs_[1]);
123 }
124 PROC_CHECK(load_procs_[0] && load_procs_[1]);
125 SetNextPhase(SplitTabletPhase::kEofPhase);
126}
127
128void SplitTabletProcedure::FaultRecoverPhaseHandler(const SplitTabletPhase&) {
129 PROC_CHECK(phases_.size() >= 2 && GetCurrentPhase() == SplitTabletPhase::kFaultRecover);

Callers 1

TEST_FFunction · 0.80

Calls 5

GetTabletNodeMethod · 0.80
AddProcedureMethod · 0.80
GetExecutorMethod · 0.80
resetMethod · 0.45
ProcIdMethod · 0.45

Tested by 1

TEST_FFunction · 0.64