[https://nvbugs/6104831][fix] Detach pruned trie children#13572
[https://nvbugs/6104831][fix] Detach pruned trie children#13572chienchunhung wants to merge 1 commit intoNVIDIA:mainfrom
Conversation
Add unit tests that isolate the KV-cache-block trie invariant violation behind the cascade-prune assertion seen in NVBugs 6104831. Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com>
a873694 to
d301166
Compare
…rmanent wedge Document the multi-signature disaggregated-serving wedge surfaced by the rc11 deployment. The report covers the 1P1D reproducer harness, the six labelled failure signatures (sender-side broken-promise after ready, trie cascade-prune assertion, decode-side bad optional access, gen-side checkGenTransferStatus blocking on at_least_num=1, receiver-side queued cancel broken-promise, and the suspected control-path send stall), their mapping to chained test/fix PR pairs (NVIDIA#13571/NVIDIA#13572 for sig NVIDIA#2, NVIDIA#13639/NVIDIA#13640 for sig #1), the in-flight fixes for sig NVIDIA#4 and sig NVIDIA#5, and the relationship to the unrelated companion fixes NVIDIA#12718 and NVIDIA#13119 which are not in rc11. Includes an investigation timeline that explains why each signature surfaced only after the previous one was fixed, and a test-coverage analysis of why the existing unit and integration tests did not catch any of these bugs. Signed-off-by: Chien-Chun Hung <2679986+chienchunhung@users.noreply.github.com> Made-with: Cursor
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThis PR adds a bidirectional edge cleanup in the Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Review rate limit: 9/10 reviews remaining, refill in 6 minutes. Comment |
|
/bot run --disable-fail-fast |
|
PR_Github #46515 [ run ] triggered by Bot. Commit: |
|
PR_Github #46515 [ run ] completed with state
|
Summary by CodeRabbit
Bug Fixes
Tests
Summary
Fixes the KV-cache-block trie invariant violation from NVBugs 6104831 by detaching a removed child node's parent back-pointer before erasing it from the parent's child map.
This prevents later
clearValue()/freeBlockAndAllDescendants()cascade pruning from walking back to a parent that no longer owns the child and firingcascade prune: parent did not find this node as a child.Related PR
Depends on #13571, which adds the reproducer tests.
Test Coverage
Updated the four NVBugs 6104831
RadixBlockTreeTestreproducers fromEXPECT_THROWtoEXPECT_NO_THROW, so they now verify the fixed behavior for:freeBlockAndAllDescendantsstoreBlocks-style block re-keyingAlso verified the full
radixBlockTreeTestsuite remains green.PR Checklist
Please review the following before submitting your PR:
PR description clearly explains what and why. If using CodeRabbit's summary, please make sure it makes sense.
PR Follows TRT-LLM CODING GUIDELINES to the best of your knowledge.
Test cases are provided for new code paths (see test instructions)
Any new dependencies have been scanned for license and vulnerabilities
CODEOWNERS updated if ownership changes
Documentation updated as needed
Update tava architecture diagram if there is a significant design change in PR.
The reviewers assigned automatically/manually are appropriate for the PR.
Please check this after reviewing the above items as appropriate for this PR.
GitHub Bot Help
To see a list of available CI bot commands, please comment
/bot help.