Skip to content

Conversation

@johnlanni
Copy link
Collaborator

@johnlanni johnlanni commented Nov 12, 2025

Ⅰ. Describe what this PR did

Replace reqChan and deltaReqChan in Connection with channels.Unbounded to prevent deadlock caused by HTTP2 flow control:

  1. When pushXds triggers HTTP2 flow control on large responses, the Stream method will no longer be blocked
  2. The Put() method in receive never blocks, ensuring continuous reception of client requests
  3. Client ACK requests can be received normally, avoiding bidirectional deadlock

This follows the same solution used in xds_proxy.go. See istio/istio#39209 for more details.

Ⅱ. Does this pull request fix one issue?

Ⅲ. Why don't you add test cases (unit test/integration test)?

Ⅳ. Describe how to verify it

Ⅴ. Special notes for reviews


Ⅰ. Describe what this PR did

Replace reqChan and deltaReqChan in Connection with channels.Unbounded to prevent deadlock caused by HTTP2 flow control:

  1. When pushXds triggers HTTP2 flow control on large responses, the Stream method will no longer be blocked
  2. The Put() method in receive never blocks, ensuring continuous reception of client requests
  3. Client ACK requests can be received normally, avoiding bidirectional deadlock

This follows the same solution used in xds_proxy.go. See istio/istio#39209 for more details.

Ⅱ. Does this pull request fix one issue?

Ⅲ. Why don't you add test cases (unit test/integration test)?

Ⅳ. Describe how to verify it

Ⅴ. Special notes for reviews

Change-Id: If509c73836610f78bc7290ddcd1a6c4a8875733d
@lingma-agents
Copy link

lingma-agents bot commented Nov 12, 2025

🔍 代码审查进行中

⏳ 正在审查

⏰️ 剩余时间:约需数分钟

🔄 分支流向: update-istio-depmain

📦 提交: 审查当前PR从135a6b6157674e的提交。


📒 文件清单 (1 个文件)
📝 变更: 1 个文件

📝 变更文件:

  • istio/istio

@johnlanni johnlanni merged commit ec099e0 into alibaba:main Nov 12, 2025
5 of 6 checks passed
@lingma-agents
Copy link

lingma-agents bot commented Nov 12, 2025

CodeReview流程已终止


CodeReview process has been terminated

@codecov-commenter
Copy link

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 43.42%. Comparing base (135a6b6) to head (157674e).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff           @@
##             main    #3119   +/-   ##
=======================================
  Coverage   43.42%   43.42%           
=======================================
  Files          82       82           
  Lines       10922    10922           
=======================================
  Hits         4743     4743           
  Misses       5850     5850           
  Partials      329      329           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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.

2 participants