github dolthub/dolt v1.1.3
1.1.3

latest releases: v1.35.13, v1.35.12, v1.35.11...
11 months ago

Merged PRs

dolt

  • 6018: Optimize COMMIT performance for large databases.
    A bottleneck in sanity checks that we run when we add new chunks to the database could make commit performance slow down as the database increased in size. On some benchmarks we ran, a typical slowdown might be ~100ms per 100GBs of database size. This optimizes the code paths involved to use more efficient algorithms and to use a scan resistant LRU cache.
  • 6013: Fix typo in sql-server cli docs
  • 6003: Add new implementation of ParseGlobalArgs
    The main benefit of this new implementation is that it won't incorrectly parse situations where a global arg value (such as username) matches a dolt subcommand. (This would have been especially problematic when we got around to converting dolt admin.)
    This also adds a nifty little burndown chart of commands that still need to be converted from using dEnv to using CliContext, in order to determine whether to generate the CliContext for a command. It'll be extra satisfying to remove elements from that list as we convert them.
  • 5986: create rust mysql client integration test
    creates an integration test to verify support for rust mysql clients
    fixes: #5622
  • 5957: Add support for dolt table import -a
    I ended up going with @zachmu's suggestion of making this a new operation type like -u, -c, and -r instead of a separate flag after I realized that -c and -r already disallow overwriting fields and it didn't really make sense to add a flag that could only be used with -u.
    This is less ambitious than what was outlined in #5936. Notably, I made a big deal in the issue about how you can import the same file multiple times or files that contain previously imported rows without issue. This was a mostly a pet feature that I erroneously assumed would be simple to implement. Given that it wasn't a requirement, after some exploration I ultimately decided to drop it.
    This should be enough to unblock the customer; we talked about implementing a --strict flag too but I don't think it's necessary for their use case.

Closed Issues

  • 5622: Add a Rust MySQL Connector test

Latency

Read Tests MySQL Dolt Multiple
covering_index_scan 1.96 2.86 1.5
groupby_scan 12.3 17.01 1.4
index_join 1.16 4.33 3.7
index_join_scan 1.12 2.14 1.9
index_scan 30.26 55.82 1.8
oltp_point_select 0.15 0.49 3.3
oltp_read_only 2.86 8.28 2.9
select_random_points 0.29 0.75 2.6
select_random_ranges 0.35 1.14 3.3
table_scan 30.81 56.84 1.8
types_table_scan 69.29 176.73 2.6
reads_mean_multiplier 2.4
Write Tests MySQL Dolt Multiple
bulk_insert 0.001 0.001 1.0
oltp_delete_insert 4.49 5.88 1.3
oltp_insert 2.14 2.81 1.3
oltp_read_write 6.09 15.55 2.6
oltp_update_index 2.26 2.91 1.3
oltp_update_non_index 2.22 2.86 1.3
oltp_write_only 3.25 7.56 2.3
types_delete_insert 4.49 6.55 1.5
writes_mean_multiplier 1.6
Overall Mean Multiple 2.1

Don't miss a new dolt release

NewReleases is sending notifications on new releases.