github dolthub/dolt v1.21.5
1.21.5

latest releases: v1.43.11, v1.43.10, v1.43.9...
12 months ago

Merged PRs

dolt

  • 6893: Bug fix: for dolt_history_ system tables
    When filtering on an indexed column from the primary index (i.e. a pk column) if a column in the underlying table has been modified and changed its tag in previous versions, we weren't able to create the lookup builder and caused a segfault. This PR changes to use the primary index as a covering index, since it's the closest we have. This is also consistent with how we had implemented Noms range lookups.
    Related to: #6891
  • 6883: Remotes: AWS: Fix a bug where uploading tables files to S3 could have unbounded memory usage.
  • 6871: Remove skip on now passing test for multi-db joins on tables with the same name
    Unskipped a bats test I added for a join across multiple databases on tables of the same name that is now fixed.

go-mysql-server

  • 2102: view aliasing bug
    The View.ViewExpr AST object seems to drop aliasing information that we depend on for query schema presentation. I want to circle back to have the view AST expression be consistent with the view definition, but this forces a re-parsing to get the correct view schema.
  • 2100: Refactor or the NewPrivilegedOperation method
    Adding support for routines is coming, and and a bunch or string arguments is cumbersome.
    Note to reviewer: start at sql/privileges.go!
  • 2099: Add the mysql.procs_privs table
    In order to support procedure and function permissions, the mysql.procs_priv needs to be supported. This change add support, but gates the ability to create these grants because they are not being used for actual permission checks yet. That will come next.
    I have engine tests on another branch due to the gate. I'll add them when the feature is complete. There are also bats tests in flight in the dolt repo which can be seen here:
    4d8fe2a...macneale4/privs_tests_wip
  • 2098: Logging improvements for prepared statements
    Updating from mysql.Handler changes in 7da194ad69efa0e4cc3992f860ecb92550482d62 – adding debug logging for ComPrepare and including params count, other minor logging cleanup.
    Related Vitess PR: dolthub/vitess#286
  • 2095: give child SQA isLateral if parent SQA isLateral
    If a parent SubqueryAlias is marked IsLateral, then mark its child SubqueryAliases with IsLateral as well.
    This essentially gives the child SubqueryAlias visibility to the left subtree all the time, which fixes the linked issue.
    We should be able to differentiate between different scopes of lateral joins and only grant visibility to those columns, which could be a subset of the parent/left columns. However, I don't think we are close to getting that working.
    fixes #6843
  • 2094: Add support for view column clause
    re: dolthub/vitess#285
    closes: #6859
  • 2083: Virtual column index support
    Implements index support for virtual columns, and fixes several bugs related to generated columns for certain statements.
    Changes the memory table index implementation to actually store secondary indexes separately, rather than fake it via the primary index. The indexes are stored via sorted slices for now. I'll do another pass and replace them, and primary storage, with btrees for speed now that I have this proof of concept working.
    Also introduces a new interface for rebuilding a single index, rather than doing a complete table rewrite every time an index is created.

vitess

  • 285: Add create view with columns
    ex:
    create view v_today(today) as select CURRENT_DATE()
  • 284: Include the With clause in walked subtrees for Select statements
    We weren't walking the With clause for select statements, which caused us to not find any bind vars in use there.
    Related to: #6852

Closed Issues

  • 6590: Enhancement suggestion (low priority): add an equivalent to git bundle
  • 6843: lateral recursive cte join error
  • 6711: VisualDB client errors
  • 2279: In multiple database mode, two tables having the same name is an issue on JOINs

Latency

Read Tests MySQL Dolt Multiple
covering_index_scan 2.14 2.76 1.3
groupby_scan 13.22 17.32 1.3
index_join 1.32 4.41 3.3
index_join_scan 1.25 2.18 1.7
index_scan 34.33 55.82 1.6
oltp_point_select 0.17 0.41 2.4
oltp_read_only 3.36 7.3 2.2
select_random_points 0.32 0.68 2.1
select_random_ranges 0.39 0.92 2.4
table_scan 34.33 55.82 1.6
types_table_scan 74.46 164.45 2.2
reads_mean_multiplier 2.0
Write Tests MySQL Dolt Multiple
bulk_insert 0.001 0.001 1.0
oltp_delete_insert 5.37 5.99 1.1
oltp_insert 2.71 2.86 1.1
oltp_read_write 7.3 14.21 1.9
oltp_update_index 2.76 2.97 1.1
oltp_update_non_index 2.86 2.91 1.0
oltp_write_only 3.82 7.04 1.8
types_delete_insert 5.28 6.32 1.2
writes_mean_multiplier 1.3
Overall Mean Multiple 1.7

Don't miss a new dolt release

NewReleases is sending notifications on new releases.