Jackie-Jiang opened a new pull request, #20199: URL: https://github.com/apache/pinot/pull/20199
`HelixBrokerStarterHostnamePortTest` failed during controller startup with `BindException: Address already in use` in [Unit Test Set 2](https://github.com/apache/pinot/actions/runs/42606062102/job/129122255959). The existing 5,000-port fork stride starts fork 3 at port 35000, inside Linux's default ephemeral range. Port probing releases the socket before the listener binds, leaving a collision window; the failed run did not capture the competing socket. Reduce the stride to 1,000 ports and assign bounded ranges to each component. The three default CI forks now use ports 21000–23999. Allocation fails with the component, range, and starting port when a range is exhausted instead of searching into another component's range. Update the controller, cluster, TLS, and multi-stage fixtures to use those bounds, and remove fixed controller-port overrides from the distributed-locking test. Validation: - 59 targeted tests passed on JDK 25 with three Surefire forks, including the originally failing broker test, controller startup and distributed-locking tests, and TLS/server startup integration tests. - Regression coverage verifies occupied-port skipping, range boundaries, invalid inputs, and exhaustion after 100 controller configurations without probing the broker range. - Spotless, checkstyle, license formatting, and license checks passed for all three changed modules. Compilation reported no warnings on added lines. This changes test fixtures only. Downstream test subclasses that derive custom listener ports from the previous component offsets need to adjust that arithmetic. -- 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]
