flush synchronously
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.
#benchmark
@jycor workflow run: https://github.com/dolthub/dolt/actions/runs/19318571340
@jycor DOLT
| comparing_percentages |
|---|
| 100.000000 to 100.000000 |
| version | result | total |
|---|---|---|
| 314b161 | ok | 5937471 |
| version | total_tests |
|---|---|
| 314b161 | 5937471 |
| correctness_percentage |
|---|
| 100.0 |
@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 |
@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 |
#benchmark
@jycor workflow run: https://github.com/dolthub/dolt/actions/runs/19325066719
@jycor DOLT
| comparing_percentages |
|---|
| 100.000000 to 100.000000 |
| version | result | total |
|---|---|---|
| 5503ea4 | ok | 5937471 |
| version | total_tests |
|---|---|
| 5503ea4 | 5937471 |
| correctness_percentage |
|---|
| 100.0 |
@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 |
@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 |