dolt icon indicating copy to clipboard operation
dolt copied to clipboard

flush synchronously

Open jycor opened this issue 2 months ago • 10 comments

For some reason prollyWriteSession creates a mutex and spins up golang routines to sequentially write to these tables. I think this is unnecessarily complicated and the overhead of these routines is not worth any potential gains from concurrency.

It's a map of table names so there shouldn't be any duplicates anyway.

jycor avatar Nov 13 '25 02:11 jycor

#benchmark

jycor avatar Nov 13 '25 02:11 jycor

@jycor workflow run: https://github.com/dolthub/dolt/actions/runs/19318571340

github-actions[bot] avatar Nov 13 '25 02:11 github-actions[bot]

@jycor DOLT

comparing_percentages
100.000000 to 100.000000
version result total
314b161 ok 5937471
version total_tests
314b161 5937471
correctness_percentage
100.0

coffeegoddd avatar Nov 13 '25 03:11 coffeegoddd

@jycor DOLT

test_name from_latency_p95 to_latency_p95 percent_change
tpcc-scale-factor-1 63.32 63.32 0.0
test_name from_server_name from_server_version from_tps to_server_name to_server_version to_tps percent_change
tpcc-scale-factor-1 dolt dbe2d1a4ab95daa76f89dc09e7f82d82a61de7ef 36.67 dolt 314b1612572e7238736ebd578f3c878caa3bdad6 37.18 1.39

coffeegoddd avatar Nov 13 '25 03:11 coffeegoddd

@jycor DOLT

read_tests from_latency to_latency percent_change
covering_index_scan 0.64 0.67 4.69
groupby_scan 13.7 13.7 0.0
index_join 2.07 2.14 3.38
index_join_scan 1.34 1.39 3.73
index_scan 28.67 28.67 0.0
oltp_point_select 0.28 0.3 7.14
oltp_read_only 5.18 5.18 0.0
select_random_points 0.58 0.6 3.45
select_random_ranges 0.57 0.61 7.02
table_scan 28.16 28.16 0.0
types_table_scan 94.1 95.81 1.82
write_tests from_latency to_latency percent_change
oltp_delete_insert 6.55 6.43 -1.83
oltp_insert 3.19 3.19 0.0
oltp_read_write 11.65 11.45 -1.72
oltp_update_index 3.25 3.25 0.0
oltp_update_non_index 3.19 3.19 0.0
oltp_write_only 6.32 6.21 -1.74
types_delete_insert 6.91 6.91 0.0

coffeegoddd avatar Nov 13 '25 03:11 coffeegoddd

#benchmark

jycor avatar Nov 13 '25 08:11 jycor

@jycor workflow run: https://github.com/dolthub/dolt/actions/runs/19325066719

github-actions[bot] avatar Nov 13 '25 08:11 github-actions[bot]

@jycor DOLT

comparing_percentages
100.000000 to 100.000000
version result total
5503ea4 ok 5937471
version total_tests
5503ea4 5937471
correctness_percentage
100.0

coffeegoddd avatar Nov 13 '25 08:11 coffeegoddd

@jycor DOLT

test_name from_latency_p95 to_latency_p95 percent_change
tpcc-scale-factor-1 63.32 63.32 0.0
test_name from_server_name from_server_version from_tps to_server_name to_server_version to_tps percent_change
tpcc-scale-factor-1 dolt dbe2d1a4ab95daa76f89dc09e7f82d82a61de7ef 36.46 dolt 5503ea41ed7461cb1fe2eed2adfad760958f96f6 36.37 -0.25

coffeegoddd avatar Nov 13 '25 08:11 coffeegoddd

@jycor DOLT

read_tests from_latency to_latency percent_change
covering_index_scan 0.63 0.63 0.0
groupby_scan 13.7 13.7 0.0
index_join 2.07 2.07 0.0
index_join_scan 1.34 1.34 0.0
index_scan 28.67 28.67 0.0
oltp_point_select 0.28 0.28 0.0
oltp_read_only 5.18 5.18 0.0
select_random_points 0.58 0.58 0.0
select_random_ranges 0.57 0.57 0.0
table_scan 28.16 28.16 0.0
types_table_scan 94.1 94.1 0.0
write_tests from_latency to_latency percent_change
oltp_delete_insert 6.55 6.43 -1.83
oltp_insert 3.19 3.19 0.0
oltp_read_write 11.65 11.45 -1.72
oltp_update_index 3.3 3.25 -1.52
oltp_update_non_index 3.19 3.13 -1.88
oltp_write_only 6.32 6.21 -1.74
types_delete_insert 6.91 6.91 0.0

coffeegoddd avatar Nov 13 '25 09:11 coffeegoddd