MCPcopy Create free account
hub / github.com/bytedance/bolt / checkStateTransition

Method checkStateTransition

bolt/exec/HashProbe.cpp:1105–1129  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1103}
1104
1105void HashProbe::checkStateTransition(ProbeOperatorState state) {
1106 BOLT_CHECK_NE(state_, state);
1107 switch (state) {
1108 case ProbeOperatorState::kRunning:
1109 if (!hasMoreSpillData()) {
1110 BOLT_CHECK_EQ(state_, ProbeOperatorState::kWaitForBuild);
1111 } else {
1112 BOLT_CHECK(
1113 state_ == ProbeOperatorState::kWaitForBuild ||
1114 state_ == ProbeOperatorState::kWaitForPeers)
1115 }
1116 break;
1117 case ProbeOperatorState::kWaitForPeers:
1118 BOLT_CHECK(hasMoreSpillData());
1119 [[fallthrough]];
1120 case ProbeOperatorState::kWaitForBuild:
1121 [[fallthrough]];
1122 case ProbeOperatorState::kFinish:
1123 BOLT_CHECK_EQ(state_, ProbeOperatorState::kRunning);
1124 break;
1125 default:
1126 BOLT_UNREACHABLE(probeOperatorStateName(state_));
1127 break;
1128 }
1129}
1130
1131RowVectorPtr HashProbe::getOutput() {
1132 if (isFinished()) {

Callers

nothing calls this directly

Calls 1

probeOperatorStateNameFunction · 0.85

Tested by

no test coverage detected