Skip to content

fix(vllm): support legacy and native request failure protocols - #383

Merged
ketor merged 3 commits into
dingodb:mainfrom
ketor:fix/vllm-dual-engine-compat
Sep 17, 2026
Merged

ketor merged 3 commits into
dingodb:mainfrom
ketor:fix/vllm-dual-engine-compat

Conversation

@ketor

@ketor ketor commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

Compatibility correction

v2.27.1 required the native transfer-results API. This change supports legacy and native engines with the same connector, without editing installed vLLM source files.

  • Restore the legacy get_finished + worker metadata path while retaining native get_transfer_results.
  • Carry actual failed request IDs through legacy metadata, including nested MultiConnector routing, and gate recovery on aggregated receive completion.
  • Adapt the old scheduler's existing recompute/fail funnel without fabricated block IDs or copied engine loops; preserve current foreign metadata and cancelled-request ownership.
  • Keep serialized I/O fences and per-request failed-source quarantine. Native engines retain their native scheduler path.
  • Add regression coverage through real scheduler/executor/MultiConnector machinery and register CPU lifecycle checks in CTest.

Verification so far

  • Actual vLLM 0.29.0 and legacy DSV4.1 build 179dd0fa9: each 199 passed plus 24 subtests. Optional storage test and native-only branch are excluded on those runs.
  • Native vLLM 8b1d188: 170 passed plus 24 subtests; legacy-only tests execute on the legacy builds instead.
  • Standalone CPU connector/worker suites: 13 and 25 tests passed.
  • Two independent static reviews; identified MultiConnector metadata loss was fixed and re-reviewed.
  • Real-model dual-engine hardware fault qualification is in progress; PR remains draft until complete.

Support is capability-based within the V1 connector lifecycle; this does not claim arbitrary historical vLLM V0 engines or partial third-party protocol backports. Native ABI, storage keys and wire format are unchanged.

@ketor
ketor marked this pull request as ready for review September 17, 2026 12:12
@ketor
ketor added this pull request to the merge queue Sep 17, 2026
Merged via the queue into dingodb:main with commit e6cbcb7 Sep 17, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant