feat(pyamber): keep peek side effect free - #8226
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 #8226 +/- ##
============================================
- Coverage 93.94% 93.91% -0.04%
Complexity 4759 4759
============================================
Files 1185 1185
Lines 48069 48810 +741
Branches 5359 5359
============================================
+ Hits 45159 45838 +679
- Misses 1480 1542 +62
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 | 410 | 0.25 | 23,742/34,052/34,052 us | 🔴 +19.4% / 🔴 +118.6% |
| 🔴 | bs=100 sw=10 sl=64 | 819 | 0.5 | 121,492/146,227/146,227 us | 🔴 +11.9% / 🔴 +36.3% |
| 🔴 | bs=1000 sw=10 sl=64 | 951 | 0.581 | 1,042,603/1,154,459/1,154,459 us | 🔴 +7.9% / 🔴 +12.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 | 410 tuples/sec | 458 tuples/sec | 787.98 tuples/sec | -10.5% | -48.0% |
| bs=10 sw=10 sl=64 | MB/s | 0.25 MB/s | 0.279 MB/s | 0.481 MB/s | -10.4% | -48.0% |
| bs=10 sw=10 sl=64 | p50 | 23,742 us | 22,520 us | 12,593 us | +5.4% | +88.5% |
| bs=10 sw=10 sl=64 | p95 | 34,052 us | 28,526 us | 15,579 us | +19.4% | +118.6% |
| bs=10 sw=10 sl=64 | p99 | 34,052 us | 28,526 us | 18,786 us | +19.4% | +81.3% |
| bs=100 sw=10 sl=64 | throughput | 819 tuples/sec | 883 tuples/sec | 1,008 tuples/sec | -7.2% | -18.7% |
| bs=100 sw=10 sl=64 | MB/s | 0.5 MB/s | 0.539 MB/s | 0.615 MB/s | -7.2% | -18.7% |
| bs=100 sw=10 sl=64 | p50 | 121,492 us | 114,248 us | 100,701 us | +6.3% | +20.6% |
| bs=100 sw=10 sl=64 | p95 | 146,227 us | 130,664 us | 107,244 us | +11.9% | +36.3% |
| bs=100 sw=10 sl=64 | p99 | 146,227 us | 130,664 us | 116,122 us | +11.9% | +25.9% |
| bs=1000 sw=10 sl=64 | throughput | 951 tuples/sec | 961 tuples/sec | 1,042 tuples/sec | -1.0% | -8.7% |
| bs=1000 sw=10 sl=64 | MB/s | 0.581 MB/s | 0.587 MB/s | 0.636 MB/s | -1.0% | -8.6% |
| bs=1000 sw=10 sl=64 | p50 | 1,042,603 us | 1,041,532 us | 981,959 us | +0.1% | +6.2% |
| bs=1000 sw=10 sl=64 | p95 | 1,154,459 us | 1,069,559 us | 1,023,080 us | +7.9% | +12.8% |
| bs=1000 sw=10 sl=64 | p99 | 1,154,459 us | 1,069,559 us | 1,051,697 us | +7.9% | +9.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,487.67,200,128000,410,0.250,23741.64,34051.83,34051.83
1,100,10,64,20,2442.53,2000,1280000,819,0.500,121491.99,146226.70,146226.70
2,1000,10,64,20,21023.58,20000,12800000,951,0.581,1042602.53,1154459.33,1154459.33|
I am converting this PR to a draft: please follow our PR template and mark it ready for review. |
|
The description now follows the current template, and this is ready for review. |
What changes were proposed in this PR?
Scan subqueues with a local index when peeking so observation does not advance the round-robin cursor or alter the next message returned by
get().Any related issues, documentation, discussions?
Closes #8225
How was this PR tested?
A direct post-fix probe confirmed that peek does not change the cursor or the next message:
Was this PR authored or co-authored using generative AI tooling?
Generated-by: Codex