darion-yaphet opened a new pull request, #3643: URL: https://github.com/apache/brpc/pull/3643
### What problem does this PR solve? Problem Summary: When IDL support is enabled, a method's full and short names share the same `MethodStatus`. During Server startup, both entries expose that status. The second exposure temporarily hides the already published metrics, so a concurrent scrape or readiness check can miss them. ### What is changed and the side effects? Changed: - Expose each method status only through its owning entry. - Add a startup regression test that checks whether published metrics disappear. - Wait for the last percentile required by the Prometheus summary before scraping it. Side effects: - Performance effects: Avoids duplicate metric exposure for methods with short-name aliases. Performance benchmarks were not run. - Breaking backward compatibility: No public API changes. --- ### Check List: - [x] Built `brpc_prometheus_metrics_unittest` and `brpc_server_unittest`. - [x] Passed all 11 Prometheus tests and 4 related Server tests. - [x] Repeated the startup regression and Prometheus sanity tests 100 times. - [x] Confirmed the new regression test failed before the fix. - Please follow [Contributor Covenant Code of Conduct](https://github.com/apache/brpc/blob/master/CODE_OF_CONDUCT.md). -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
