Skip to content

Reject extra arguments to dolt_cherry_pick --abort - #2555

Merged
timsehn merged 1 commit into
masterfrom
fix/2554-cherry-pick-abort-extra
Sep 2, 2026
Merged

Reject extra arguments to dolt_cherry_pick --abort#2555
timsehn merged 1 commit into
masterfrom
fix/2554-cherry-pick-abort-extra

Conversation

@timsehn

@timsehn timsehn commented Sep 1, 2026

Copy link
Copy Markdown
Collaborator

Fixes #2554.

dolt_cherry_pick('--abort', 'extra') silently discarded the extra argument and aborted. dolt_merge('--abort', 'x') and dolt_rebase('--abort', 'x') already refuse with --abort does not take other arguments.

--abort now rejects any positional argument with that same error and does not call mergeAbortInPlace, so an in-progress cherry-pick stays in place until a bare --abort.

test/doltlite_cherry_pick.sh covers the idle error and a conflicted pick that remains conflicted through the refused abort. vc_oracle_cherry_pick_abort_test.sh expects both engines to error on extra args when no cherry-pick is active.

Co-Authored-By: Grok 4.6 noreply@x.ai

dolt_cherry_pick('--abort', 'extra') discarded the extra argument and
still aborted, unlike dolt_merge('--abort', 'x') and dolt_rebase
('--abort', 'x'), which refuse with --abort does not take other
arguments. A refused abort must also leave the in-progress cherry-pick
untouched.

Check positional args first on --abort, matching merge/rebase. Native
tests cover the idle error and a conflicted cherry-pick that stays
conflicted until a bare --abort. The abort oracle now expects both
engines to error on extra args when no cherry-pick is active.

Fixes #2554

Co-Authored-By: Grok 4.6 <noreply@x.ai>
@itoqa

itoqa Bot commented Sep 2, 2026

Copy link
Copy Markdown

Ito QA test results
Commit: 8efb68d: 9 test cases ran, 9 passed ✅.

Summary

Coverage focused on safe handling of cherry-pick and abort workflows, including successful recovery, invalid arguments, multiple-commit rejection, active conflicts, constraint violations, rollback, reopening, and preserving repository state. These are primarily business-logic and edge-case checks, with clean behavior across the exercised scenarios.

Safe to merge — the run found no PR-attributable regressions or failures, and all exercised recovery and error-handling behaviors completed as expected. The overall merge risk is low.

Tests run by Ito

View full run

Result Severity Type Description
Abort The invalid abort command returned the expected argument error and left the active conflict unchanged. A later bare abort still cleared the conflict and restored the original row value.
Abort An abort command with an extra value returned the expected error, and the idle database stayed unchanged with zero conflicts.
Abort A bare abort cleared the cherry-pick conflict and restored the table to its previous main-branch value.
General After the cherry-pick conflict was aborted, reopening the database showed the original commit, the main row value, and a clean working state.
General The invalid abort command returned the expected error and left the active conflict unchanged. A later bare abort succeeded, cleared the conflict, and restored the original row value.
General The two-commit request was rejected without changing the working rows. The next one-commit request replayed only the feature change and created exactly one new commit.
Cherrypick Trying to cherry-pick two commits returns the expected error. The repository stays unchanged, with no conflicts and no pending cherry-pick.
Rev The invalid abort showed the expected error and left the constraint violation in place. A later bare abort cleared the violation and completed normally.
Rev The invalid abort returned the expected error without changing the repository. After rollback and reopen, the original commit, clean status, and base row were still present, and a later valid cherry-pick worked normally.

Tip

Reply with @itoqa to send us feedback on this test run.

@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

DoltLite source coverage

Metric Covered Total Coverage
Lines 53657 63056 85.09%
Branches 24823 36614 67.80%
Functions 2510 2722 92.21%

Merged 202 pooled raw profiles from the distributed Linux correctness jobs.

Per-file coverage (98 files)
File Lines Branches Functions
src/btree_orig_api.c 87.91% 77.27% 89.53%
src/chunk_file.c 100.00% 100.00% 100.00%
src/chunk_index.c 84.27% 66.78% 100.00%
src/chunk_refs.c 84.99% 69.17% 79.37%
src/chunk_staging.c 93.75% 81.15% 100.00%
src/chunk_store.c 91.11% 75.34% 100.00%
src/chunk_store_commit.c 86.75% 67.23% 100.00%
src/chunk_store_lock.c 88.69% 71.00% 100.00%
src/chunk_store_refs_api.c 91.17% 76.75% 100.00%
src/chunk_wal.c 82.48% 58.70% 87.50%
src/doltlite.c 100.00% 100.00% 100.00%
src/doltlite_add.c 86.85% 69.76% 100.00%
src/doltlite_ancestor.c 89.19% 68.92% 100.00%
src/doltlite_at.c 83.39% 64.20% 100.00%
src/doltlite_blame.c 80.86% 61.14% 96.43%
src/doltlite_branch.c 88.30% 80.66% 100.00%
src/doltlite_branches.c 93.75% 75.93% 93.75%
src/doltlite_checkout.c 77.57% 63.06% 96.43%
src/doltlite_cherry_pick.c 79.29% 60.00% 71.43%
src/doltlite_chunk_walk.c 92.23% 66.22% 100.00%
src/doltlite_clean.c 93.33% 67.19% 100.00%
src/doltlite_cmd.c 81.09% 75.19% 100.00%
src/doltlite_commit.c 94.41% 76.87% 100.00%
src/doltlite_commit_ancestors.c 92.09% 72.83% 92.31%
src/doltlite_commit_cmd.c 78.08% 67.50% 100.00%
src/doltlite_config.c 80.47% 71.74% 100.00%
src/doltlite_conflicts.c 84.27% 62.50% 93.75%
src/doltlite_constraint_violations.c 82.46% 57.54% 91.11%
src/doltlite_core.c 91.34% 70.81% 100.00%
src/doltlite_creds.c 84.09% 53.78% 92.00%
src/doltlite_dbpage.c 93.45% 78.33% 91.67%
src/doltlite_diff.c 88.56% 68.99% 96.55%
src/doltlite_diff_stat.c 94.17% 76.01% 95.65%
src/doltlite_diff_table.c 94.18% 70.74% 97.06%
src/doltlite_docs.c 83.94% 71.43% 94.74%
src/doltlite_gc.c 78.48% 58.10% 96.55%
src/doltlite_hashof.c 79.79% 70.05% 100.00%
src/doltlite_history.c 86.93% 76.40% 100.00%
src/doltlite_http_remote.c 82.22% 57.34% 92.31%
src/doltlite_ignore.c 77.57% 62.25% 82.14%
src/doltlite_log.c 96.81% 73.24% 92.86%
src/doltlite_merge.c 95.93% 70.46% 100.00%
src/doltlite_merge_cmd.c 87.19% 72.12% 100.00%
src/doltlite_merge_constraints.c 86.15% 63.64% 95.00%
src/doltlite_merge_constraints_check.c 86.81% 67.79% 100.00%
src/doltlite_merge_constraints_fk.c 78.00% 56.64% 100.00%
src/doltlite_merge_constraints_notnull.c 80.45% 67.92% 100.00%
src/doltlite_merge_constraints_strict.c 77.35% 63.04% 100.00%
src/doltlite_merge_constraints_unique.c 85.99% 62.82% 100.00%
src/doltlite_merge_pass1.c 92.94% 74.16% 100.00%
src/doltlite_merge_pass2.c 83.59% 67.46% 100.00%
src/doltlite_merge_predetect.c 86.38% 71.15% 95.45%
src/doltlite_merge_rebuild.c 99.15% 78.91% 100.00%
src/doltlite_merge_rows.c 82.93% 64.74% 100.00%
src/doltlite_merge_schema.c 90.95% 71.94% 97.06%
src/doltlite_merge_status.c 91.98% 73.53% 92.31%
src/doltlite_patch.c 94.36% 70.71% 98.15%
src/doltlite_rebase.c 85.42% 59.55% 100.00%
src/doltlite_record.c 78.67% 59.36% 95.24%
src/doltlite_ref.c 95.52% 75.36% 100.00%
src/doltlite_remote.c 85.61% 66.89% 96.00%
src/doltlite_remote_sql.c 66.60% 60.73% 93.55%
src/doltlite_remotesrv.c 75.76% 63.93% 90.77%
src/doltlite_reset.c 87.48% 72.76% 100.00%
src/doltlite_revert.c 80.51% 69.44% 100.00%
src/doltlite_schema_diff.c 94.42% 71.13% 96.97%
src/doltlite_schemas.c 70.86% 48.75% 90.91%
src/doltlite_status.c 91.49% 72.78% 97.56%
src/doltlite_tag.c 86.84% 70.31% 94.12%
src/doltlite_tests.c 84.22% 69.61% 91.11%
src/doltlite_tls.c 85.04% 63.64% 92.31%
src/doltlite_verify_constraints.c 79.15% 66.44% 100.00%
src/doltlite_workspace.c 91.84% 70.27% 100.00%
src/pager_shim.c 58.87% 67.46% 34.29%
src/prolly_btree.c 86.00% 66.45% 90.70%
src/prolly_btree_catalog.c 83.10% 69.04% 97.22%
src/prolly_btree_cursor.c 84.15% 62.09% 96.00%
src/prolly_btree_cursor_count.c 80.05% 56.74% 100.00%
src/prolly_btree_cursor_payload.c 75.69% 54.48% 95.65%
src/prolly_btree_cursor_seek.c 76.68% 66.20% 82.35%
src/prolly_btree_mutation.c 87.89% 68.20% 97.83%
src/prolly_btree_orig.c 93.75% 71.43% 93.15%
src/prolly_btree_state.c 93.51% 66.38% 100.00%
src/prolly_btree_txn.c 81.84% 69.30% 98.08%
src/prolly_cache.c 93.27% 69.12% 100.00%
src/prolly_check.c 60.36% 62.96% 100.00%
src/prolly_chunker.c 94.04% 78.38% 100.00%
src/prolly_cursor.c 89.67% 80.47% 100.00%
src/prolly_diff.c 59.59% 46.05% 71.43%
src/prolly_hash.c 93.33% 80.00% 100.00%
src/prolly_hashset.c 90.48% 80.56% 100.00%
src/prolly_mutate.c 80.78% 69.11% 100.00%
src/prolly_mutmap.c 93.87% 80.34% 100.00%
src/prolly_node.c 88.91% 73.81% 100.00%
src/prolly_three_way_diff.c 95.79% 85.37% 100.00%
src/prolly_three_way_merge.c 81.92% 67.41% 91.67%
src/prolly_xxhash.c 100.00% 100.00% 100.00%
src/sortkey.c 93.16% 81.51% 100.00%

Download HTML and LCOV artifacts from this workflow run.

@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

DoltLite performance vs PR base

  • Baseline: c438aa463061db6c7d2bc82bf682e5479b8cce7e
  • Candidate: 4faefff00a78f9608ee40a68eb2f1ac6d51ae54a
  • Overall ratio: 1.001x
  • Gate result: PASS
  • Gates: individual > 1.50x with more than 10.00ms regression; section, suite, or overall > 1.25x with the same minimum delta
  • vc individual gate: > 2.00x with more than 50.00ms regression
  • Confirmed failed gates: none
  • Automatic retries: int cleared after 2 attempts; no gate failed every time
Suite Workloads Baseline total Candidate total Ratio Result
blobpk 69 11.16s 11.13s 0.997x PASS
compositepk 69 11.43s 11.39s 0.996x PASS
int 69 9.09s 9.09s 1.000x PASS
textpk 69 10.76s 10.86s 1.010x PASS
vc 13 740.07ms 740.75ms 1.001x PASS
blobpk details
Section Test Baseline Candidate Delta Ratio Result
mem_reads oltp_point_select 37.69ms 37.20ms -487us 0.987x PASS
mem_reads oltp_range_select 13.60ms 13.36ms -240us 0.982x PASS
mem_reads oltp_sum_range 13.37ms 13.26ms -110us 0.992x PASS
mem_reads oltp_order_range 3.17ms 3.16ms -6us 0.998x PASS
mem_reads oltp_distinct_range 4.24ms 4.42ms +185us 1.044x PASS
mem_reads oltp_index_scan 6.10ms 6.08ms -11us 0.998x PASS
mem_reads select_random_points 20.44ms 20.36ms -82us 0.996x PASS
mem_reads select_random_ranges 5.25ms 5.31ms +60us 1.011x PASS
mem_reads covering_index_scan 4.50ms 4.59ms +91us 1.020x PASS
mem_reads groupby_scan 35.60ms 34.30ms -1.30ms 0.963x PASS
mem_reads index_join 9.53ms 9.11ms -419us 0.956x PASS
mem_reads index_join_scan 5.23ms 5.20ms -27us 0.995x PASS
mem_reads types_table_scan 1.18s 1.18s +1.83ms 1.002x PASS
mem_reads table_scan 1.28s 1.27s -7.31ms 0.994x PASS
mem_reads oltp_read_only 139.01ms 140.70ms +1.70ms 1.012x PASS
mem_writes oltp_bulk_insert 363.72ms 359.79ms -3.93ms 0.989x PASS
mem_writes oltp_insert 37.90ms 37.80ms -103us 0.997x PASS
mem_writes oltp_update_index 129.33ms 129.19ms -134us 0.999x PASS
mem_writes oltp_update_non_index 76.78ms 75.97ms -802us 0.990x PASS
mem_writes oltp_delete_insert 101.01ms 100.81ms -205us 0.998x PASS
mem_writes oltp_write_only 58.82ms 58.43ms -394us 0.993x PASS
mem_writes types_delete_insert 51.41ms 51.85ms +436us 1.008x PASS
mem_writes oltp_read_write 140.48ms 142.64ms +2.17ms 1.015x PASS
file_reads oltp_point_select 56.86ms 56.09ms -763us 0.987x PASS
file_reads oltp_range_select 15.71ms 15.70ms -15us 0.999x PASS
file_reads oltp_sum_range 16.03ms 15.55ms -482us 0.970x PASS
file_reads oltp_order_range 3.46ms 3.53ms +69us 1.020x PASS
file_reads oltp_distinct_range 4.55ms 4.54ms -7us 0.998x PASS
file_reads oltp_index_scan 8.27ms 8.23ms -35us 0.996x PASS
file_reads select_random_points 23.30ms 22.90ms -400us 0.983x PASS
file_reads select_random_ranges 7.23ms 7.27ms +37us 1.005x PASS
file_reads covering_index_scan 6.76ms 6.74ms -22us 0.997x PASS
file_reads groupby_scan 36.65ms 35.12ms -1.52ms 0.958x PASS
file_reads index_join 10.90ms 11.07ms +166us 1.015x PASS
file_reads index_join_scan 5.63ms 5.77ms +140us 1.025x PASS
file_reads types_table_scan 1.20s 1.20s +2.76ms 1.002x PASS
file_reads table_scan 1.30s 1.29s -9.24ms 0.993x PASS
file_reads oltp_read_only 166.32ms 164.20ms -2.12ms 0.987x PASS
file_writes oltp_bulk_insert 371.76ms 372.20ms +440us 1.001x PASS
file_writes oltp_insert 44.50ms 45.12ms +615us 1.014x PASS
file_writes oltp_update_index 149.15ms 146.50ms -2.65ms 0.982x PASS
file_writes oltp_update_non_index 91.11ms 89.66ms -1.45ms 0.984x PASS
file_writes oltp_delete_insert 114.73ms 114.31ms -421us 0.996x PASS
file_writes oltp_write_only 69.69ms 69.98ms +291us 1.004x PASS
file_writes types_delete_insert 62.15ms 61.37ms -781us 0.987x PASS
file_writes oltp_read_write 151.84ms 151.36ms -479us 0.997x PASS
ac_reads oltp_point_select 56.37ms 55.76ms -616us 0.989x PASS
ac_reads oltp_range_select 15.75ms 15.47ms -278us 0.982x PASS
ac_reads oltp_sum_range 15.78ms 15.55ms -231us 0.985x PASS
ac_reads oltp_order_range 3.43ms 3.43ms +5us 1.001x PASS
ac_reads oltp_distinct_range 4.62ms 4.55ms -70us 0.985x PASS
ac_reads oltp_index_scan 8.35ms 8.28ms -72us 0.991x PASS
ac_reads select_random_points 23.05ms 23.19ms +140us 1.006x PASS
ac_reads select_random_ranges 7.29ms 7.35ms +53us 1.007x PASS
ac_reads covering_index_scan 6.83ms 6.75ms -79us 0.988x PASS
ac_reads groupby_scan 35.84ms 36.33ms +488us 1.014x PASS
ac_reads index_join 10.72ms 10.83ms +109us 1.010x PASS
ac_reads index_join_scan 5.62ms 5.70ms +79us 1.014x PASS
ac_reads types_table_scan 1.19s 1.18s -6.27ms 0.995x PASS
ac_reads table_scan 1.28s 1.28s -6.28ms 0.995x PASS
ac_reads oltp_read_only 164.22ms 164.38ms +154us 1.001x PASS
ac_writes oltp_bulk_insert_ac 74.06ms 73.70ms -354us 0.995x PASS
ac_writes oltp_insert_ac 88.50ms 90.69ms +2.19ms 1.025x PASS
ac_writes oltp_update_index_ac 97.83ms 97.63ms -200us 0.998x PASS
ac_writes oltp_update_non_index_ac 83.22ms 81.77ms -1.45ms 0.983x PASS
ac_writes oltp_delete_insert_ac 92.32ms 93.01ms +690us 1.007x PASS
ac_writes oltp_write_only_ac 91.36ms 91.32ms -44us 1.000x PASS
ac_writes types_delete_insert_ac 82.10ms 83.97ms +1.87ms 1.023x PASS
ac_writes oltp_read_write_ac 95.31ms 98.17ms +2.86ms 1.030x PASS
compositepk details
Section Test Baseline Candidate Delta Ratio Result
mem_reads oltp_point_select 40.47ms 39.94ms -532us 0.987x PASS
mem_reads oltp_range_select 21.03ms 20.68ms -352us 0.983x PASS
mem_reads oltp_sum_range 20.06ms 19.95ms -112us 0.994x PASS
mem_reads oltp_order_range 3.89ms 3.88ms -16us 0.996x PASS
mem_reads oltp_distinct_range 5.11ms 5.14ms +23us 1.004x PASS
mem_reads oltp_index_scan 6.11ms 5.90ms -210us 0.966x PASS
mem_reads select_random_points 32.32ms 31.95ms -368us 0.989x PASS
mem_reads select_random_ranges 8.96ms 8.77ms -197us 0.978x PASS
mem_reads covering_index_scan 4.23ms 4.28ms +49us 1.012x PASS
mem_reads groupby_scan 41.71ms 39.78ms -1.93ms 0.954x PASS
mem_reads index_join 10.23ms 10.46ms +233us 1.023x PASS
mem_reads index_join_scan 5.29ms 5.28ms -6us 0.999x PASS
mem_reads types_table_scan 1.17s 1.17s +2.87ms 1.002x PASS
mem_reads table_scan 1.28s 1.28s -2.26ms 0.998x PASS
mem_reads oltp_read_only 171.89ms 168.10ms -3.79ms 0.978x PASS
mem_writes oltp_bulk_insert 345.16ms 344.90ms -259us 0.999x PASS
mem_writes oltp_insert 34.57ms 34.49ms -80us 0.998x PASS
mem_writes oltp_update_index 119.14ms 118.83ms -306us 0.997x PASS
mem_writes oltp_update_non_index 77.13ms 76.10ms -1.03ms 0.987x PASS
mem_writes oltp_delete_insert 95.20ms 94.83ms -366us 0.996x PASS
mem_writes oltp_write_only 57.24ms 55.96ms -1.28ms 0.978x PASS
mem_writes types_delete_insert 53.25ms 52.61ms -637us 0.988x PASS
mem_writes oltp_read_write 160.46ms 157.44ms -3.01ms 0.981x PASS
file_reads oltp_point_select 60.19ms 59.07ms -1.12ms 0.981x PASS
file_reads oltp_range_select 22.88ms 22.59ms -292us 0.987x PASS
file_reads oltp_sum_range 22.16ms 22.04ms -121us 0.995x PASS
file_reads oltp_order_range 4.12ms 4.18ms +63us 1.015x PASS
file_reads oltp_distinct_range 5.33ms 5.37ms +33us 1.006x PASS
file_reads oltp_index_scan 8.13ms 7.98ms -148us 0.982x PASS
file_reads select_random_points 35.42ms 35.25ms -179us 0.995x PASS
file_reads select_random_ranges 11.12ms 11.15ms +36us 1.003x PASS
file_reads covering_index_scan 6.52ms 6.38ms -139us 0.979x PASS
file_reads groupby_scan 41.46ms 40.19ms -1.27ms 0.969x PASS
file_reads index_join 12.13ms 12.12ms -6us 1.000x PASS
file_reads index_join_scan 5.77ms 5.69ms -72us 0.988x PASS
file_reads types_table_scan 1.20s 1.19s -12.11ms 0.990x PASS
file_reads table_scan 1.28s 1.28s -3.74ms 0.997x PASS
file_reads oltp_read_only 201.28ms 201.29ms +4us 1.000x PASS
file_writes oltp_bulk_insert 356.07ms 356.12ms +52us 1.000x PASS
file_writes oltp_insert 40.64ms 40.74ms +105us 1.003x PASS
file_writes oltp_update_index 133.73ms 132.10ms -1.63ms 0.988x PASS
file_writes oltp_update_non_index 93.05ms 90.43ms -2.62ms 0.972x PASS
file_writes oltp_delete_insert 106.63ms 107.15ms +523us 1.005x PASS
file_writes oltp_write_only 67.51ms 67.93ms +415us 1.006x PASS
file_writes types_delete_insert 58.94ms 59.31ms +370us 1.006x PASS
file_writes oltp_read_write 171.18ms 170.10ms -1.08ms 0.994x PASS
ac_reads oltp_point_select 60.42ms 60.04ms -381us 0.994x PASS
ac_reads oltp_range_select 22.99ms 22.77ms -222us 0.990x PASS
ac_reads oltp_sum_range 22.33ms 21.87ms -468us 0.979x PASS
ac_reads oltp_order_range 4.17ms 4.15ms -19us 0.995x PASS
ac_reads oltp_distinct_range 5.40ms 5.37ms -36us 0.993x PASS
ac_reads oltp_index_scan 8.28ms 8.19ms -95us 0.989x PASS
ac_reads select_random_points 35.28ms 35.70ms +413us 1.012x PASS
ac_reads select_random_ranges 11.25ms 11.05ms -193us 0.983x PASS
ac_reads covering_index_scan 6.51ms 6.65ms +143us 1.022x PASS
ac_reads groupby_scan 40.09ms 41.99ms +1.90ms 1.047x PASS
ac_reads index_join 12.55ms 12.29ms -257us 0.980x PASS
ac_reads index_join_scan 5.69ms 5.79ms +103us 1.018x PASS
ac_reads types_table_scan 1.20s 1.19s -7.44ms 0.994x PASS
ac_reads table_scan 1.28s 1.29s +8.59ms 1.007x PASS
ac_reads oltp_read_only 202.49ms 200.48ms -2.02ms 0.990x PASS
ac_writes oltp_bulk_insert_ac 78.79ms 85.04ms +6.25ms 1.079x PASS
ac_writes oltp_insert_ac 104.94ms 101.15ms -3.79ms 0.964x PASS
ac_writes oltp_update_index_ac 109.77ms 117.86ms +8.10ms 1.074x PASS
ac_writes oltp_update_non_index_ac 96.10ms 86.83ms -9.27ms 0.904x PASS
ac_writes oltp_delete_insert_ac 99.10ms 106.72ms +7.62ms 1.077x PASS
ac_writes oltp_write_only_ac 107.28ms 97.12ms -10.16ms 0.905x PASS
ac_writes types_delete_insert_ac 88.77ms 89.74ms +978us 1.011x PASS
ac_writes oltp_read_write_ac 112.74ms 109.26ms -3.48ms 0.969x PASS
int details
Section Test Baseline Candidate Delta Ratio Result
mem_reads oltp_point_select 22.40ms 22.27ms -134us 0.994x PASS
mem_reads oltp_range_select 9.75ms 8.87ms -875us 0.910x PASS
mem_reads oltp_sum_range 8.79ms 8.56ms -231us 0.974x PASS
mem_reads oltp_order_range 2.58ms 2.29ms -288us 0.888x PASS
mem_reads oltp_distinct_range 3.69ms 3.60ms -87us 0.976x PASS
mem_reads oltp_index_scan 3.87ms 4.09ms +219us 1.057x PASS
mem_reads select_random_points 9.46ms 9.06ms -401us 0.958x PASS
mem_reads select_random_ranges 3.16ms 3.17ms +3us 1.001x PASS
mem_reads covering_index_scan 3.20ms 3.29ms +85us 1.027x PASS
mem_reads groupby_scan 29.32ms 27.76ms -1.56ms 0.947x PASS
mem_reads index_join 6.02ms 6.44ms +420us 1.070x PASS
mem_reads index_join_scan 3.87ms 3.67ms -201us 0.948x PASS
mem_reads types_table_scan 973.39ms 979.33ms +5.94ms 1.006x PASS
mem_reads table_scan 1.09s 1.10s +9.35ms 1.009x PASS
mem_reads oltp_read_only 92.54ms 94.68ms +2.14ms 1.023x PASS
mem_writes oltp_bulk_insert 178.83ms 174.02ms -4.81ms 0.973x PASS
mem_writes oltp_insert 20.20ms 21.05ms +851us 1.042x PASS
mem_writes oltp_update_index 69.15ms 69.32ms +165us 1.002x PASS
mem_writes oltp_update_non_index 41.75ms 40.47ms -1.28ms 0.969x PASS
mem_writes oltp_delete_insert 54.74ms 53.79ms -949us 0.983x PASS
mem_writes oltp_write_only 33.45ms 33.75ms +303us 1.009x PASS
mem_writes types_delete_insert 28.04ms 26.59ms -1.44ms 0.949x PASS
mem_writes oltp_read_write 86.83ms 80.75ms -6.08ms 0.930x PASS
file_reads oltp_point_select 27.80ms 26.65ms -1.15ms 0.958x PASS
file_reads oltp_range_select 9.04ms 9.20ms +155us 1.017x PASS
file_reads oltp_sum_range 9.02ms 8.72ms -306us 0.966x PASS
file_reads oltp_order_range 2.31ms 2.37ms +58us 1.025x PASS
file_reads oltp_distinct_range 3.53ms 3.49ms -42us 0.988x PASS
file_reads oltp_index_scan 4.77ms 4.42ms -347us 0.927x PASS
file_reads select_random_points 10.16ms 9.51ms -648us 0.936x PASS
file_reads select_random_ranges 3.46ms 3.47ms +12us 1.003x PASS
file_reads covering_index_scan 3.89ms 3.99ms +99us 1.025x PASS
file_reads groupby_scan 28.26ms 27.70ms -564us 0.980x PASS
file_reads index_join 6.67ms 6.81ms +140us 1.021x PASS
file_reads index_join_scan 3.91ms 4.12ms +212us 1.054x PASS
file_reads types_table_scan 1.04s 1.03s -918us 0.999x PASS
file_reads table_scan 1.08s 1.07s -9.26ms 0.991x PASS
file_reads oltp_read_only 98.20ms 99.18ms +975us 1.010x PASS
file_writes oltp_bulk_insert 213.22ms 211.25ms -1.96ms 0.991x PASS
file_writes oltp_insert 29.34ms 29.02ms -320us 0.989x PASS
file_writes oltp_update_index 163.72ms 109.35ms -54.38ms 0.668x PASS
file_writes oltp_update_non_index 82.08ms 82.48ms +396us 1.005x PASS
file_writes oltp_delete_insert 96.00ms 95.77ms -230us 0.998x PASS
file_writes oltp_write_only 65.95ms 66.32ms +373us 1.006x PASS
file_writes types_delete_insert 40.85ms 48.23ms +7.38ms 1.181x PASS
file_writes oltp_read_write 109.41ms 111.77ms +2.36ms 1.022x PASS
ac_reads oltp_point_select 25.02ms 25.70ms +685us 1.027x PASS
ac_reads oltp_range_select 8.57ms 9.14ms +567us 1.066x PASS
ac_reads oltp_sum_range 9.23ms 8.45ms -787us 0.915x PASS
ac_reads oltp_order_range 2.30ms 2.42ms +120us 1.052x PASS
ac_reads oltp_distinct_range 3.15ms 3.35ms +203us 1.064x PASS
ac_reads oltp_index_scan 3.98ms 4.11ms +124us 1.031x PASS
ac_reads select_random_points 9.07ms 9.39ms +316us 1.035x PASS
ac_reads select_random_ranges 3.49ms 3.56ms +66us 1.019x PASS
ac_reads covering_index_scan 3.72ms 3.54ms -178us 0.952x PASS
ac_reads groupby_scan 27.09ms 27.46ms +377us 1.014x PASS
ac_reads index_join 6.44ms 6.49ms +49us 1.008x PASS
ac_reads index_join_scan 3.73ms 3.73ms -1us 1.000x PASS
ac_reads types_table_scan 943.48ms 935.30ms -8.18ms 0.991x PASS
ac_reads table_scan 1.13s 1.13s +2.42ms 1.002x PASS
ac_reads oltp_read_only 95.99ms 97.33ms +1.34ms 1.014x PASS
ac_writes oltp_bulk_insert_ac 94.70ms 92.32ms -2.38ms 0.975x PASS
ac_writes oltp_insert_ac 99.26ms 126.00ms +26.74ms 1.269x PASS
ac_writes oltp_update_index_ac 169.94ms 176.81ms +6.86ms 1.040x PASS
ac_writes oltp_update_non_index_ac 123.76ms 114.80ms -8.96ms 0.928x PASS
ac_writes oltp_delete_insert_ac 107.82ms 106.68ms -1.14ms 0.989x PASS
ac_writes oltp_write_only_ac 102.21ms 101.72ms -487us 0.995x PASS
ac_writes types_delete_insert_ac 95.40ms 125.64ms +30.24ms 1.317x PASS
ac_writes oltp_read_write_ac 115.13ms 124.06ms +8.93ms 1.078x PASS
textpk details
Section Test Baseline Candidate Delta Ratio Result
mem_reads oltp_point_select 33.76ms 33.45ms -312us 0.991x PASS
mem_reads oltp_range_select 12.77ms 12.66ms -112us 0.991x PASS
mem_reads oltp_sum_range 12.67ms 12.54ms -132us 0.990x PASS
mem_reads oltp_order_range 2.93ms 2.91ms -22us 0.992x PASS
mem_reads oltp_distinct_range 4.06ms 4.01ms -49us 0.988x PASS
mem_reads oltp_index_scan 5.36ms 5.43ms +74us 1.014x PASS
mem_reads select_random_points 20.66ms 20.40ms -260us 0.987x PASS
mem_reads select_random_ranges 4.54ms 4.56ms +20us 1.004x PASS
mem_reads covering_index_scan 4.17ms 4.17ms -4us 0.999x PASS
mem_reads groupby_scan 33.38ms 33.02ms -365us 0.989x PASS
mem_reads index_join 8.77ms 8.76ms -11us 0.999x PASS
mem_reads index_join_scan 5.20ms 5.35ms +143us 1.027x PASS
mem_reads types_table_scan 1.20s 1.22s +19.67ms 1.016x PASS
mem_reads table_scan 1.31s 1.33s +20.01ms 1.015x PASS
mem_reads oltp_read_only 129.12ms 129.61ms +495us 1.004x PASS
mem_writes oltp_bulk_insert 312.12ms 309.26ms -2.86ms 0.991x PASS
mem_writes oltp_insert 33.59ms 34.27ms +676us 1.020x PASS
mem_writes oltp_update_index 125.09ms 128.09ms +3.00ms 1.024x PASS
mem_writes oltp_update_non_index 69.22ms 69.59ms +379us 1.005x PASS
mem_writes oltp_delete_insert 91.64ms 90.78ms -859us 0.991x PASS
mem_writes oltp_write_only 51.94ms 51.67ms -266us 0.995x PASS
mem_writes types_delete_insert 45.27ms 45.17ms -101us 0.998x PASS
mem_writes oltp_read_write 129.50ms 129.50ms -2us 1.000x PASS
file_reads oltp_point_select 41.97ms 42.21ms +232us 1.006x PASS
file_reads oltp_range_select 13.85ms 13.68ms -170us 0.988x PASS
file_reads oltp_sum_range 13.92ms 13.72ms -197us 0.986x PASS
file_reads oltp_order_range 3.08ms 3.12ms +48us 1.016x PASS
file_reads oltp_distinct_range 4.27ms 4.22ms -47us 0.989x PASS
file_reads oltp_index_scan 6.46ms 6.55ms +93us 1.014x PASS
file_reads select_random_points 22.05ms 21.70ms -353us 0.984x PASS
file_reads select_random_ranges 5.56ms 5.56ms +5us 1.001x PASS
file_reads covering_index_scan 5.12ms 5.09ms -29us 0.994x PASS
file_reads groupby_scan 33.75ms 33.21ms -536us 0.984x PASS
file_reads index_join 9.33ms 9.36ms +30us 1.003x PASS
file_reads index_join_scan 5.15ms 5.21ms +62us 1.012x PASS
file_reads types_table_scan 1.18s 1.20s +15.29ms 1.013x PASS
file_reads table_scan 1.30s 1.33s +29.12ms 1.022x PASS
file_reads oltp_read_only 143.12ms 144.04ms +928us 1.006x PASS
file_writes oltp_bulk_insert 325.55ms 320.03ms -5.52ms 0.983x PASS
file_writes oltp_insert 39.96ms 39.92ms -40us 0.999x PASS
file_writes oltp_update_index 145.95ms 145.63ms -321us 0.998x PASS
file_writes oltp_update_non_index 82.30ms 82.51ms +209us 1.003x PASS
file_writes oltp_delete_insert 107.38ms 108.34ms +957us 1.009x PASS
file_writes oltp_write_only 62.77ms 62.66ms -110us 0.998x PASS
file_writes types_delete_insert 55.02ms 53.95ms -1.07ms 0.981x PASS
file_writes oltp_read_write 143.76ms 144.21ms +448us 1.003x PASS
ac_reads oltp_point_select 43.71ms 43.38ms -325us 0.993x PASS
ac_reads oltp_range_select 14.47ms 14.06ms -403us 0.972x PASS
ac_reads oltp_sum_range 14.55ms 14.39ms -156us 0.989x PASS
ac_reads oltp_order_range 3.10ms 3.11ms +5us 1.002x PASS
ac_reads oltp_distinct_range 4.21ms 4.22ms +12us 1.003x PASS
ac_reads oltp_index_scan 6.66ms 6.59ms -69us 0.990x PASS
ac_reads select_random_points 22.62ms 22.47ms -147us 0.994x PASS
ac_reads select_random_ranges 5.57ms 5.61ms +44us 1.008x PASS
ac_reads covering_index_scan 5.19ms 5.14ms -47us 0.991x PASS
ac_reads groupby_scan 33.45ms 33.02ms -435us 0.987x PASS
ac_reads index_join 9.48ms 9.24ms -237us 0.975x PASS
ac_reads index_join_scan 5.35ms 5.51ms +162us 1.030x PASS
ac_reads types_table_scan 1.21s 1.21s +2.58ms 1.002x PASS
ac_reads table_scan 1.28s 1.31s +29.04ms 1.023x PASS
ac_reads oltp_read_only 142.98ms 141.75ms -1.22ms 0.991x PASS
ac_writes oltp_bulk_insert_ac 59.28ms 56.92ms -2.35ms 0.960x PASS
ac_writes oltp_insert_ac 67.87ms 68.37ms +500us 1.007x PASS
ac_writes oltp_update_index_ac 78.60ms 77.62ms -980us 0.988x PASS
ac_writes oltp_update_non_index_ac 63.48ms 59.97ms -3.51ms 0.945x PASS
ac_writes oltp_delete_insert_ac 70.92ms 70.83ms -88us 0.999x PASS
ac_writes oltp_write_only_ac 74.68ms 77.77ms +3.09ms 1.041x PASS
ac_writes types_delete_insert_ac 68.39ms 67.94ms -443us 0.994x PASS
ac_writes oltp_read_write_ac 77.58ms 77.58ms +0us 1.000x PASS
vc details
Section Test Baseline Candidate Delta Ratio Result
vc status_clean_many_tables 83.65ms 83.27ms -378us 0.995x PASS
vc status_dirty_many_tables 87.26ms 87.77ms +510us 1.006x PASS
vc diff_regular_working_one_table 78.27ms 78.47ms +196us 1.003x PASS
vc diff_regular_working_many_tables 91.24ms 90.89ms -352us 0.996x PASS
vc diff_stat_working_many_tables 91.38ms 91.46ms +80us 1.001x PASS
vc diff_schema_working_many_tables 91.29ms 91.52ms +228us 1.002x PASS
vc branch_list_many_branches 22.37ms 22.33ms -46us 0.998x PASS
vc branch_create_delete 24.82ms 25.04ms +221us 1.009x PASS
vc checkout_branch_clean 55.38ms 55.69ms +313us 1.006x PASS
vc merge_data_no_conflicts 28.80ms 28.90ms +99us 1.003x PASS
vc merge_schema_no_conflicts 21.58ms 21.61ms +32us 1.001x PASS
vc merge_data_conflicts 31.81ms 31.95ms +138us 1.004x PASS
vc merge_data_conflicts_with_resolve 32.23ms 31.87ms -361us 0.989x PASS

All relative performance gates passed.

@timsehn
timsehn merged commit 1622b18 into master Sep 2, 2026
68 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

dolt_cherry_pick --abort silently ignores extra arguments

1 participant