feat(frontend): add sort by execution time with nulls last#5890
feat(frontend): add sort by execution time with nulls last#5890roshiiiz wants to merge 8 commits into
Conversation
|
👋 Thanks for your first contribution to Texera, @roshiiiz! If you're looking for a good place to start, browse issues labeled You can drive common housekeeping yourself by commenting one of these commands on its own line:
Each command must match exactly: |
Automated Reviewer SuggestionsBased on the
|
|
/request-review @xuang7 |
|
|
| config | throughput | MB/s | latency | max Δ latest / 7d | |
|---|---|---|---|---|---|
| 🔴 | bs=10 sw=10 sl=64 | 417 | 0.255 | 24,350/34,335/34,335 us | 🔴 +27.9% / 🔴 +122.1% |
| 🟢 | bs=100 sw=10 sl=64 | 955 | 0.583 | 102,465/120,028/120,028 us | 🟢 -14.2% / 🔴 +9.1% |
| ⚪ | bs=1000 sw=10 sl=64 | 1,114 | 0.68 | 897,313/925,525/925,525 us | ⚪ within ±5% / 🟢 -14.8% |
Baseline details
Latest main 1c580e5 from same runner
| config | metric | PR | latest main | 7d avg | Δ latest | Δ 7d |
|---|---|---|---|---|---|---|
| bs=10 sw=10 sl=64 | throughput | 417 tuples/sec | 450 tuples/sec | 756.6 tuples/sec | -7.3% | -44.9% |
| bs=10 sw=10 sl=64 | MB/s | 0.255 MB/s | 0.274 MB/s | 0.462 MB/s | -6.9% | -44.8% |
| bs=10 sw=10 sl=64 | p50 | 24,350 us | 19,036 us | 13,009 us | +27.9% | +87.2% |
| bs=10 sw=10 sl=64 | p95 | 34,335 us | 35,912 us | 15,463 us | -4.4% | +122.1% |
| bs=10 sw=10 sl=64 | p99 | 34,335 us | 35,912 us | 18,561 us | -4.4% | +85.0% |
| bs=100 sw=10 sl=64 | throughput | 955 tuples/sec | 931 tuples/sec | 963.83 tuples/sec | +2.6% | -0.9% |
| bs=100 sw=10 sl=64 | MB/s | 0.583 MB/s | 0.568 MB/s | 0.588 MB/s | +2.6% | -0.9% |
| bs=100 sw=10 sl=64 | p50 | 102,465 us | 104,618 us | 103,320 us | -2.1% | -0.8% |
| bs=100 sw=10 sl=64 | p95 | 120,028 us | 139,972 us | 110,058 us | -14.2% | +9.1% |
| bs=100 sw=10 sl=64 | p99 | 120,028 us | 139,972 us | 118,543 us | -14.2% | +1.3% |
| bs=1000 sw=10 sl=64 | throughput | 1,114 tuples/sec | 1,093 tuples/sec | 989.07 tuples/sec | +1.9% | +12.6% |
| bs=1000 sw=10 sl=64 | MB/s | 0.68 MB/s | 0.667 MB/s | 0.604 MB/s | +1.9% | +12.6% |
| bs=1000 sw=10 sl=64 | p50 | 897,313 us | 910,993 us | 1,015,599 us | -1.5% | -11.6% |
| bs=1000 sw=10 sl=64 | p95 | 925,525 us | 974,155 us | 1,055,944 us | -5.0% | -12.4% |
| bs=1000 sw=10 sl=64 | p99 | 925,525 us | 974,155 us | 1,086,834 us | -5.0% | -14.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,479.11,200,128000,417,0.255,24350.26,34335.30,34335.30
1,100,10,64,20,2094.24,2000,1280000,955,0.583,102464.60,120028.29,120028.29
2,1000,10,64,20,17947.00,20000,12800000,1114,0.680,897313.29,925525.30,925525.30
xuang7
left a comment
There was a problem hiding this comment.
Thanks for the PR! Overall, this looks good to me and tested locally. One small thing: frontend/junit.xml seems to have been accidentally committed. Could you remove it? Also, we can consider adjusting the order of the sort options. This option might fit better with the other "By ..." options instead of being placed after all the other options.
|
@xuang7
|
What changes were proposed in this PR?
This PR adds the ability to sort workflows by "Execution Time" on the main Dashboard, and ensures that workflows which have never been executed (where execution time is
null) are pushed to the bottom of the list rather than awkwardly floating at the top.Changes made:
sort-method.ts,sort-button.component).UnifiedResourceSchema.scalain the backend to includeresourceExecutionTimeField.DashboardResource.scalaandWorkflowSearchQueryBuilder.scalato handle the new sort condition, specifically appending.nullsLast()so that un-executed workflows drop to the bottom of the list.Any related issues, documentation, discussions?
Issue#3406
How was this PR tested?
Tested manually in a local development environment:
sbt.Was this PR authored or co-authored using generative AI tooling?
Generated-by: Antigravity (DeepMind)