feat(pyamber): validate executor definitions - #8208
Conversation
Backport auto-label reportThis
|
Automated Reviewer SuggestionsBased on the
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #8208 +/- ##
============================================
- Coverage 93.94% 93.90% -0.04%
Complexity 4759 4759
============================================
Files 1185 1185
Lines 48069 48813 +744
Branches 5359 5359
============================================
+ Hits 45159 45840 +681
- Misses 1480 1543 +63
Partials 1430 1430
*This pull request uses carry forward flags. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
| config | throughput | MB/s | latency | max Δ latest / 7d | |
|---|---|---|---|---|---|
| 🟢 | bs=10 sw=10 sl=64 | 393 | 0.24 | 24,150/37,115/37,115 us | 🟢 -29.9% / 🔴 +138.2% |
| 🔴 | bs=100 sw=10 sl=64 | 813 | 0.496 | 122,389/137,692/137,692 us | 🟢 -7.7% / 🔴 +28.4% |
| ⚪ | bs=1000 sw=10 sl=64 | 933 | 0.57 | 1,074,661/1,133,999/1,133,999 us | ⚪ within ±5% / 🔴 +10.8% |
Baseline details
Latest main 70c2114 from same runner
| config | metric | PR | latest main | 7d avg | Δ latest | Δ 7d |
|---|---|---|---|---|---|---|
| bs=10 sw=10 sl=64 | throughput | 393 tuples/sec | 337 tuples/sec | 787.98 tuples/sec | +16.6% | -50.1% |
| bs=10 sw=10 sl=64 | MB/s | 0.24 MB/s | 0.206 MB/s | 0.481 MB/s | +16.5% | -50.1% |
| bs=10 sw=10 sl=64 | p50 | 24,150 us | 29,051 us | 12,593 us | -16.9% | +91.8% |
| bs=10 sw=10 sl=64 | p95 | 37,115 us | 52,929 us | 15,579 us | -29.9% | +138.2% |
| bs=10 sw=10 sl=64 | p99 | 37,115 us | 52,929 us | 18,786 us | -29.9% | +97.6% |
| bs=100 sw=10 sl=64 | throughput | 813 tuples/sec | 841 tuples/sec | 1,008 tuples/sec | -3.3% | -19.3% |
| bs=100 sw=10 sl=64 | MB/s | 0.496 MB/s | 0.514 MB/s | 0.615 MB/s | -3.5% | -19.4% |
| bs=100 sw=10 sl=64 | p50 | 122,389 us | 114,418 us | 100,701 us | +7.0% | +21.5% |
| bs=100 sw=10 sl=64 | p95 | 137,692 us | 149,121 us | 107,244 us | -7.7% | +28.4% |
| bs=100 sw=10 sl=64 | p99 | 137,692 us | 149,121 us | 116,122 us | -7.7% | +18.6% |
| bs=1000 sw=10 sl=64 | throughput | 933 tuples/sec | 942 tuples/sec | 1,042 tuples/sec | -1.0% | -10.5% |
| bs=1000 sw=10 sl=64 | MB/s | 0.57 MB/s | 0.575 MB/s | 0.636 MB/s | -0.9% | -10.4% |
| bs=1000 sw=10 sl=64 | p50 | 1,074,661 us | 1,055,322 us | 981,959 us | +1.8% | +9.4% |
| bs=1000 sw=10 sl=64 | p95 | 1,133,999 us | 1,119,720 us | 1,023,080 us | +1.3% | +10.8% |
| bs=1000 sw=10 sl=64 | p99 | 1,133,999 us | 1,119,720 us | 1,051,697 us | +1.3% | +7.8% |
Raw CSV
config_idx,batch_size,schema_width,string_len,num_batches,total_ms,total_tuples,total_bytes,tuples_per_sec,mb_per_sec,lat_p50_us,lat_p95_us,lat_p99_us
0,10,10,64,20,508.39,200,128000,393,0.240,24150.14,37115.06,37115.06
1,100,10,64,20,2459.65,2000,1280000,813,0.496,122388.85,137692.17,137692.17
2,1000,10,64,20,21426.67,20000,12800000,933,0.570,1074660.61,1133998.65,1133998.65
What changes were proposed in this PR?
Replace the removable assert on executor definition count with an explicit ValueError.
The regression covers both missing and multiple operator definitions under normal and optimized Python.
Any related issues, documentation, discussions?
Closes #8207
How was this PR tested?
Was this PR authored or co-authored using generative AI tooling?
Generated-by: Codex