feat(frontend): add sort by execution time with nulls last#5890
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 |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #5890 +/- ##
============================================
- Coverage 56.81% 56.78% -0.04%
+ Complexity 3024 3009 -15
============================================
Files 1126 1125 -1
Lines 43702 43653 -49
Branches 4733 4728 -5
============================================
- Hits 24831 24789 -42
+ Misses 17398 17393 -5
+ Partials 1473 1471 -2
*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 | 396 | 0.242 | 25,348/32,882/32,882 us | 🔴 -7.5% / 🔴 +118.2% |
| 🔴 | bs=100 sw=10 sl=64 | 774 | 0.473 | 123,961/161,421/161,421 us | 🔴 +18.2% / 🔴 +48.3% |
| ⚪ | bs=1000 sw=10 sl=64 | 916 | 0.559 | 1,085,420/1,163,065/1,163,065 us | ⚪ within ±5% / 🔴 +11.5% |
Baseline details
Latest main 3f87773 from same runner
| config | metric | PR | latest main | 7d avg | Δ latest | Δ 7d |
|---|---|---|---|---|---|---|
| bs=10 sw=10 sl=64 | throughput | 396 tuples/sec | 428 tuples/sec | 770.82 tuples/sec | -7.5% | -48.6% |
| bs=10 sw=10 sl=64 | MB/s | 0.242 MB/s | 0.261 MB/s | 0.47 MB/s | -7.3% | -48.6% |
| bs=10 sw=10 sl=64 | p50 | 25,348 us | 23,858 us | 12,723 us | +6.2% | +99.2% |
| bs=10 sw=10 sl=64 | p95 | 32,882 us | 31,078 us | 15,070 us | +5.8% | +118.2% |
| bs=10 sw=10 sl=64 | p99 | 32,882 us | 31,078 us | 18,429 us | +5.8% | +78.4% |
| bs=100 sw=10 sl=64 | throughput | 774 tuples/sec | 822 tuples/sec | 973.75 tuples/sec | -5.8% | -20.5% |
| bs=100 sw=10 sl=64 | MB/s | 0.473 MB/s | 0.502 MB/s | 0.594 MB/s | -5.8% | -20.4% |
| bs=100 sw=10 sl=64 | p50 | 123,961 us | 121,064 us | 102,519 us | +2.4% | +20.9% |
| bs=100 sw=10 sl=64 | p95 | 161,421 us | 136,615 us | 108,855 us | +18.2% | +48.3% |
| bs=100 sw=10 sl=64 | p99 | 161,421 us | 136,615 us | 117,788 us | +18.2% | +37.0% |
| bs=1000 sw=10 sl=64 | throughput | 916 tuples/sec | 922 tuples/sec | 1,004 tuples/sec | -0.7% | -8.8% |
| bs=1000 sw=10 sl=64 | MB/s | 0.559 MB/s | 0.563 MB/s | 0.613 MB/s | -0.7% | -8.8% |
| bs=1000 sw=10 sl=64 | p50 | 1,085,420 us | 1,083,160 us | 1,001,930 us | +0.2% | +8.3% |
| bs=1000 sw=10 sl=64 | p95 | 1,163,065 us | 1,116,567 us | 1,042,923 us | +4.2% | +11.5% |
| bs=1000 sw=10 sl=64 | p99 | 1,163,065 us | 1,116,567 us | 1,074,893 us | +4.2% | +8.2% |
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,504.94,200,128000,396,0.242,25348.42,32882.03,32882.03
1,100,10,64,20,2583.43,2000,1280000,774,0.473,123960.88,161420.92,161420.92
2,1000,10,64,20,21834.86,20000,12800000,916,0.559,1085419.56,1163065.34,1163065.34
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
|
|
Hi @roshiiiz as this is a frontend feature, can you include a gif/screenshot in the PR description? Thanks |
@Yicong-Huang Done, Kindly review it |
|
Hi @roshiiiz, scalafmtCheck failed. Please let me know once the PR is ready to merge. Thanks! |
|
Hi @roshiiiz, the database change does not relevant to this PR. Could you please remove it? |
yes removing it rightnow, it was failing a check |
5a2556c to
2fc11ac
Compare
|
@xuang7 it keeps failing this one check, is it important? |

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?
Closes #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)