kumarUjjawal opened a new pull request, #27034:
URL: https://github.com/apache/datafusion/pull/27034

   ## Which issue does this PR close?
   
   - Closes #27033.
   
   ## Rationale for this change
   
   `completed_groups_release_first_value_bitmap` (added in #26782) takes about 
10 minutes in the `cargo test hash collisions (amd64)` merge-queue job. It 
aggregates 131,072 distinct keys in one batch. Under `force_hash_collisions`, 
every key has the hash 0, so the aggregate is quadratic. The test checks that 
`FIRST_VALUE(v ORDER BY v)` releases its per-batch bitmap, which does not 
depend on hashing.
   
   The long job gives spot runner shutdowns more time to hit it. Evidence from 
merge-queue runs:
   
   - In the passing rerun for #26926 
([job](https://github.com/apache/datafusion/actions/runs/41571721394/job/125710730373)),
 the physical-plan unit test binary took 609.89s. All other tests in it 
finished by 03:40:31. This test ran from about 03:40:07 to 03:50:17.
   - The median job time went from 6.2 minutes (230 jobs, Oct 21 to Oct 30) to 
12.0 minutes (70 jobs after #26782 merged).
   - All 5 failed attempts of the job since then were runner shutdowns while 
this test was running: #26929 
([job](https://github.com/apache/datafusion/actions/runs/41114163010/job/124263887540)),
 #26898 
([job](https://github.com/apache/datafusion/actions/runs/41115099549/job/124267135386)),
 #26883 
([job](https://github.com/apache/datafusion/actions/runs/41120437208/job/124285496814)),
 #26974 
([job](https://github.com/apache/datafusion/actions/runs/41559552415/job/125666576696)),
 #26926 
([job](https://github.com/apache/datafusion/actions/runs/41571721394/job/125705896210)).
   
   ## What changes are included in this PR?
   
   Skip the test under `force_hash_collisions`, as #26594 did for another test. 
The imports that only this test uses move into its body, so they are not unused 
under the feature.
   
   ## What is the testing strategy for this PR?
   
   Test config change only. The regular `cargo test` job still runs the test. 
Locally (`--profile ci`), the test takes 0.92s by default and 309s with 
`force_hash_collisions`. With the feature, it is now skipped, and Clippy passes 
with and without the feature.
   
   ## Are there any user-facing changes?
   
   No.
   


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