xiangfu0 opened a new pull request, #20109:
URL: https://github.com/apache/pinot/pull/20109

   Share a default one-server cluster between 
`SegmentWriterUploaderIntegrationTest` and `SegmentUploadIntegrationTest`, 
removing one JVM/cluster lifecycle from their four tests. This follows #20084 
and keeps both classes in CI lane 2-b.
   
   The four test bodies and assertions are unchanged. Each class retains its 
table/schema/index hooks and data directories. Cleanup waits for server table 
managers, Helix external views, and broker routing to disappear; schemas remain 
alive across methods until class teardown. Direct class selection still starts 
and stops its own fixture.
   
   ### Measured local test time
   
   Two before/after comparisons on the final source, run sequentially in 
baseline/shared/shared/baseline order:
   
   | Pair | Separate classes | Shared suite | Observed reduction | ZK startup 
retries, before / after |
   | --- | ---: | ---: | ---: | ---: |
   | 1 | 150.537 s | 63.767 s | 86.770 s (57.6%) | 2 / 0 |
   | 2 | 108.800 s | 80.671 s | 28.129 s (25.9%) | 1 / 1 |
   
   These are elapsed times for the four affected tests' Surefire goal, 
including forks and fixture setup/teardown, not sums of nested XML suite 
durations. All runs passed 4/4 without skips or test retries. Baseline is 
`eca9ea7afde8c746bda0f2427ac1a4cc4101ef00`; environment was JDK 25, JaCoCo 
0.8.16, the same dependency bytes, 1–4 GiB test heap, and 
`ActiveProcessorCount=2` on an Intel i9 macOS host.
   
   Startup variation is substantial: each logged ZK retry took about 30 
seconds. Pair 1 includes an additional retry imbalance; pair 2 had one retry in 
each run. Query transport/encoding/compression also use existing clock-based 
sampling. These are observed local results, not a CI-wide percentage or a 
guarantee of the same saving on other machines. The structural reduction is two 
cluster/JVM lifecycles to one.
   
   ### Validation
   
   Run the shared cases with `./mvnw -pl pinot-integration-tests -am test 
-Pgithub-actions,codecoverage,integration-tests-set-2-lane-b 
-Dtest=SharedOfflineUploadSuite -Dsurefire.failIfNoSpecifiedTests=false 
-Dunit.test.rerun.count=0`. Direct selection uses either original class name. 
The scoped timing runs reused a freshly installed dependency reactor and 
measured the integration module alone.
   
   
   - Shared suite: 4/4 passed twice; reverse class order: 4/4; direct Writer: 
1/1; direct Upload: 3/3. No failed, skipped, or retried test cases.
   - Exact source-selector model: 175 selected source instances before/after, 
no duplicates; only these two classes move from the default lane 2-b execution 
to the named suite.
   - All 6,699 captured production class files match. A coverage audit caught 
and corrected premature schema deletion; the existing-schema branch is restored 
in normal, reverse, and direct Upload runs. A matched diagnostic pair forcing 
gRPC/ARROW/LZ4_HIGH in the inherited query helper passed 4/4 on each side and 
covered all 102 previously baseline-only Arrow probes. Its remaining raw 
differences are 3 lost / 113 gained probes; the losses map to concurrent event 
deduplication and ZK startup retries. The complete normal-run differences were 
also inspected. Raw probe equality is not claimed, and diagnostic timings are 
excluded above.
   - Formatting, license formatting, checkstyle, and license checks pass. 
Independent lifecycle and selection reviews found no actionable issues.
   
   CI is pending for the new PR head; keeping this PR draft until current-head 
checks pass and the normal named suite execution is verified.
   


-- 
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]

Reply via email to