[Bugfix][KV Connector] Propagate cache reset failure during sleep (#54581)

Signed-off-by: CrazyCoder <18235787078@163.com> Signed-off-by: aoshen02 <aoshen@inferact.ai> Co-authored-by: aoshen02 <aoshen@inferact.ai> Co-authored-by: Codex <noreply@openai.com>

CrazyCoder committed Sep 21, 2026 at 09:25 UTC 11852548518b13c9a00a4e73dadd19d44e221e2b
1 file changed +9 -4
vllm/v1/engine/core.py
+9 -4
@@ -867,10 +867,11 @@ class EngineCore:
867 # reset_connector=True so external connectors clear alongside
868 # local caches, matching the pause_generation(clear_cache=True)
869 # contract. No-op when no connector is configured.
870 - self.reset_prefix_cache(
870 + if not self.reset_prefix_cache(
871 reset_running_requests=reset_running_requests,
872 reset_connector=reset_connector,
873 - )
873 + ):
874 + raise RuntimeError("Failed to reset the KV connector cache.")
875 self.reset_mm_cache()
876 self.reset_encoder_cache()
877
@@ -2001,8 +2002,12 @@ class EngineCoreProc(EngineCore):
2002 raise ValueError(f"Invalid pause mode: {mode}")
2003
2004 def engine_idle_callback(engine: "EngineCoreProc", future: Future[Any]) -> None:
2004 - engine._finish_pause(clear_cache)
2005 - future.set_result(None)
2005 + try:
2006 + engine._finish_pause(clear_cache)
2007 + except Exception as e:
2008 + future.set_exception(e)
2009 + else:
2010 + future.set_result(None)
2011
2012 if mode == "abort":
2013 aborted_reqs = self.scheduler.finish_requests(