Skip to content
Merged
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions src/server.cc
Original file line number Diff line number Diff line change
Expand Up @@ -445,6 +445,25 @@ InferenceServer::IsReady(bool* ready)
*ready = false;
goto strict_done;
}

// For models in READY lifecycle state, also check runtime
// backend instance readiness. This catches cases where the
// model was loaded successfully (lifecycle = READY) but the
// backend has become unhealthy at runtime (e.g., Python backend
// stub process died).
if (vs.second.first == ModelReadyState::READY) {
bool model_ready = false;
Status status = ModelIsReady(mv.first.name_, vs.first, &model_ready);
Comment thread
itsnothuy marked this conversation as resolved.
if (!status.IsOk() || !model_ready) {
LOG_VERBOSE(1) << "Model '" << mv.first.name_ << "' version "
<< vs.first
<< " is in READY lifecycle state but failed "
"runtime readiness check during server "
"readiness evaluation";
*ready = false;
goto strict_done;
}
}
}
}
strict_done:;
Expand Down
Loading