Jackie-Jiang opened a new pull request, #20247: URL: https://github.com/apache/pinot/pull/20247
The compatibility verifier could start operations while a server's health endpoint returned HTTP 503, then report an absent segment as ONLINE because its replica-state collection was empty. Require successful server readiness within a bounded deadline, detect exited processes, and require nonempty replicas with exact state matches from a single external-view snapshot. Preserve application and Helix logs separately for each server start without changing its working directory. Capture health, process details, and a bounded thread dump before failure cleanup, honor `--keep-cluster-on-failure`, and upload diagnostics from both compatibility CI matrices. These defects were uncovered while investigating [the Pinot 1.5.0 rollback failure on #20239](https://github.com/apache/pinot/actions/runs/43210432114/job/131156321243?pr=20239). This fixes the verifier checks and missing diagnostics; it does not claim to resolve the underlying server startup stall. Validation: - 22 Java tests passed (`SegmentOpTest`, including 13 new cases, and `StreamOpTest`), with upstream reactor compilation and compiler warning checks. - Seven standalone readiness tests passed, covering HTTP 503 to 200, timeout, process exit, hanging HTTP/diagnostic calls, server2, diagnostic ordering, keep-cluster behavior, and per-start logs. - Verified the default Log4j configuration records both server and Helix messages under the configured log directory. - Root and verifier-module Spotless, Checkstyle, license formatting/checks, shell syntax, and workflow YAML checks passed. The full rolling-upgrade compatibility suite was not run locally. -- 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]
