3219378872 opened a new pull request, #11229:
URL: https://github.com/apache/rocketmq/pull/11229
### Which Issue(s) This PR Fixes
- Fixes #11228
### Brief Description
Forwarded Proxy Admin RPCs currently have no deadline when the original
caller supplies none, so an unresponsive owning proxy can leave the request
pending indefinitely.
Apply a fresh deadline to each invocation while retaining the cached peer
channel/stub. Add `grpcAdminServerForwardTimeoutMillis` (default: 15000 ms) as
the complete peer-call budget. Keep the existing per-broker timeout separate
because a forwarded `VerifyMessage` can perform broker queries followed by a
telemetry relay. A shorter incoming gRPC deadline still takes precedence.
Update the English and Chinese configuration documentation.
### How Did You Test This Change?
Temurin 8u504-b01, Maven 3.9.9, Linux amd64; initialized the pinned
`rocketmq-apis` submodule.
```bash
mvn -B -ntp -pl proxy -am \
-Dtest=ProxyAdminForwarderTest,ProxyAdminGrpcServiceTest,ProxyAdminAuthInterceptorTest,AdminModelConverterTest,DefaultAdminServiceTest,ProxyConfigTest
\
-Dsurefire.failIfNoSpecifiedTests=false test
```
- 110 tests passed, with no failures, errors or skips. The normal reactor
checks also passed.
- Red/green regression: on the unmodified baseline, the new real-transport
test failed because the peer received no deadline; the shorter-caller-deadline
control already passed.
- The new tests run the production forwarder against a real loopback Netty
gRPC server. They verify cancellation of a stalled peer, `DEADLINE_EXCEEDED`,
reuse of the cached peer after a timeout, and preservation of a shorter caller
deadline. The consumer directory is mocked; this is not a full broker-cluster
deployment test.
AI assisted the analysis, implementation and tests; I reviewed the change
and ran the validation above.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]