github dolthub/dolt v0.53.2
0.53.2

latest releases: v1.43.0, v1.42.20, v1.42.19...
19 months ago

Merged PRs

dolt

  • 5428: Add support for using full length commit ids in hashof() procedure
  • 5423: updates reset script to disable foreign_key_checks temporarily
    Currently, when reset scripts run between Prepared Script Tests errors will occur as tables with foreign keys get dropped and re-added. This change disables foreign key checks while tables are being dropped and re-added as to avoid these foreign key errors.
  • 5421: Add new version of dolt_diff_summary table function
    The old version of the dolt_diff_summary table function was renamed to dolt_diff_stat
    This new version of dolt_diff_summary returns a summary of changed tables between two refs
    us_jails> select * from dolt_diff_summary("WORKING", "taylor/test");
    +-----------------------------+-----------+-------------+---------------+
    | table_name                  | diff_type | data_change | schema_change |
    +-----------------------------+-----------+-------------+---------------+
    | jails                       | modified  | true        | false         |
    | test                        | dropped   | false       | true          |
    | inmate_population_snapshots | added     | true        | true          |
    +-----------------------------+-----------+-------------+---------------+
    3 rows in set (0.01 sec)
  • 5420: Add new version of --summary option to dolt diff
    The old version of dolt diff --summary was renamed to dolt diff --stat
    This new version of dolt diff --summary returns a summary of what tables changed/how between two refs
    us-jails % dolt diff --summary
    +-----------------------------+-----------+-------------+---------------+
    | Table name                  | Diff type | Data change | Schema change |
    +-----------------------------+-----------+-------------+---------------+
    | inmate_population_snapshots | dropped   | true        | true          |
    | jails                       | modified  | true        | false         |
    | test                        | added     | false       | true          |
    +-----------------------------+-----------+-------------+---------------+
    
  • 5415: Bump golang.org/x/text from 0.3.3 to 0.3.8 in /go/gen/proto/dolt/services/eventsapi
    Bumps golang.org/x/text from 0.3.3 to 0.3.8.
    Commits
    • 434eadc language: reject excessively large Accept-Language strings
    • 23407e7 go.mod: ignore cyclic dependency for tagging
    • b18d3dd secure/precis: replace bytes.Compare with bytes.Equal
    • 795e854 all: replace io/ioutil with io and os package
    • b0ca10f internal/language: bump script types to uint16 and update registry
    • ba9b0e1 go.mod: update x/tools to HEAD
    • d03b418 A+C: delete AUTHORS and CONTRIBUTORS
    • b4bca84 language/display: fix Tag method comment
    • ea49e3e go.mod: update x/tools to HEAD
    • 78819d0 go.mod: update to golang.org/x/text v0.1.10
    • Additional commits viewable in compare view

    [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=golang.org/x/text&package-manager=go_modules&previous-version=0.3.3&new-version=0.3.8)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
    Dependabot commands and options
    You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/dolthub/dolt/network/alerts).
  • 5409: Rename diff summary to diff stat
    CLI: dolt diff --summary -> dolt diff --stat
    SQL: dolt_diff_summary -> dolt_diff_stat
  • 5408: binlog bug fixes – stripping checksums and applying Query flags
    This PR fixes a couple of issues from binlog testing:

    Query flags

    Now that we have visibility to the additional flags in the Query binlog event (dolthub/vitess#220), this PR adds handling for those flags.

    Checksum support

    To receive messages from the primary when binlog_checksums are enabled, the replica now sends a handshake signal to the primary and strips off any received checksum on binlog events. This lets us remove the requirement to disable checksums on the primary in order to use Dolt's binlog replication.

    Password auth for tests

    This PR also includes a change in the test code for the replica connect to the primary with a password, to ensure we're testing password auth.
  • 5407: Restored some needed images
  • 5403: Pruned docs directory. Renamed it images.
    It was stale.
  • 5393: go/store/nbs: use chunk journal index to speedup bootstrapping
  • 5360: go/doltcore/migrate: write table for migrated commit mapping
    Changes dolt migrate to write a special branch called migrated_commits containing a single table mapping with the schema:
    CREATE TABLE `mapping` (
    `old_commit_hash` varchar(16383) NOT NULL,
    `new_commit_hash` varchar(16383),
    PRIMARY KEY (`old_commit_hash`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_bin
  • 5335: Line-based diffs for modified rows
    This adds special git-style diffs for stored procedures. There are two modes. The default displays line changes with the familiar + and - prepended to each line. The second requires the flag --proc-in-place, and shows the changes in-place with the color signifying the change.

go-mysql-server

  • 1614: Bump golang.org/x/text from 0.3.7 to 0.3.8
    Bumps golang.org/x/text from 0.3.7 to 0.3.8.
    Commits
    • 434eadc language: reject excessively large Accept-Language strings
    • 23407e7 go.mod: ignore cyclic dependency for tagging
    • b18d3dd secure/precis: replace bytes.Compare with bytes.Equal
    • 795e854 all: replace io/ioutil with io and os package
    • b0ca10f internal/language: bump script types to uint16 and update registry
    • ba9b0e1 go.mod: update x/tools to HEAD
    • d03b418 A+C: delete AUTHORS and CONTRIBUTORS
    • b4bca84 language/display: fix Tag method comment
    • ea49e3e go.mod: update x/tools to HEAD
    • 78819d0 go.mod: update to golang.org/x/text v0.1.10
    • Additional commits viewable in compare view

    [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=golang.org/x/text&package-manager=go_modules&previous-version=0.3.7&new-version=0.3.8)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
    Dependabot commands and options
    You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/dolthub/go-mysql-server/network/alerts).
  • 1611: Added support for dynamic privileges
  • 1610: Project reports correct outputCols
  • 1609: Added missing analyzer rule for block expressions
    Fixes #5390
  • 1601: allow safe drops when column is referenced in check constraint
    MySQL allows columns which are referenced in check constraints to be dropped if they are the only column referenced in the constraint. This change updates dolt to match this behavior.
    fixes: #3147
  • 1558: apply spatial index lookup
    Changes:
    • Add support for displaing SPATIAL KEY for SHOW CREATE TABLE.
    • Allow IndexedTableAccess for in-memory tables that have spatial indexes
    • dolt pr with interface changes: #5164
    • added new testing suite for Spatial Indexes
    • some fixes to prepared queries for filtered tables

vitess

  • 222: Added known dynamic privileges
    Getting a general STRING rule to work without running into shift/reduce errors proved too time consuming, so I just added all known dynamic privileges according to MySQL's documentation (except SUPER_USER, which is also giving errors).
  • 220: Exposing SQL Option and SQL Mode flags for Query events
    Query binlog events are sent from the primary when the replica needs to execute a SQL statement directly. This is only for DDL operations, since DML operations are handled with a structured data message that indicates exactly which rows changed.
    There's extra metadata passed in Query binlog messages that wasn't getting exposed by Vitess that we need to execute the statements correctly (e.g. foreign_key_checks disabled). This PR exposes the SQL Options and SQL Mode metadata so that we can access them from Dolt.

Closed Issues

  • 4751: View overview of table changes between revisions
  • 5427: Connecting via linux mysql client won't accept password as '-p' option
  • 5390: panic on stored procedure call
  • 3147: Dolt does not allow the dropping of a column with check constraint
  • 251: LastInsertId always returns 0

Latency

Read Tests MySQL Dolt Multiple
covering_index_scan 1.96 2.76 1.4
groupby_scan 12.08 16.41 1.4
index_join 1.16 4.18 3.6
index_join_scan 1.12 2.07 1.8
index_scan 30.81 52.89 1.7
oltp_point_select 0.15 0.48 3.2
oltp_read_only 3.02 8.58 2.8
select_random_points 0.3 0.74 2.5
select_random_ranges 0.35 1.12 3.2
table_scan 31.37 54.83 1.7
types_table_scan 69.29 161.51 2.3
reads_mean_multiplier 2.3
Write Tests MySQL Dolt Multiple
bulk_insert 0.001 0.001 1.0
oltp_delete_insert 3.02 11.87 3.9
oltp_insert 1.55 2.97 1.9
oltp_read_write 5.37 17.95 3.3
oltp_update_index 1.7 5.67 3.3
oltp_update_non_index 1.58 5.77 3.7
oltp_write_only 2.48 8.9 3.6
types_delete_insert 3.19 11.87 3.7
writes_mean_multiplier 3.1
Overall Mean Multiple 2.6

Don't miss a new dolt release

NewReleases is sending notifications on new releases.