修复多模态特征传输失败导致的进程级崩溃,实现跨 rank 错误共识与资源安全释放。
本 PR 是一个**高价值的关键 bug 修复**,强烈建议精读。它解决了一个可能导致生产环境进程崩溃的严重问题,并引入了严谨的分布式错误处理模式。核心设计决策——延迟错误、跨 rank 共识、防御性资源释放——对于理解 SGLang 如何处理多模态输入失败非常有启发性。建议重点审查以下方面:1) `scheduler.py` 中 `_materialize_cuda_vmm_inputs` 和 `_gather_vmm_materialization_errors` 的错误收集与同步逻辑;2) `mm_utils.py` 中 `ShmPointerMMData` 的 `__setstate__` 和 `close_and_unlink` 方法如何安全处理各种失败场景;3) `schedule_batch.py` 中 `release_transport_proxies` 的实现及其在 `from_processor_output` 和 `set_finish_with_abort` 中的调用点。新增的单元测试覆盖了核心失败路径,值得参考。