github dolthub/dolt v1.1.0
1.1.0

latest releases: v1.43.13, v1.43.12, v1.43.11...
18 months ago

Release 1.0.1 contained a backwards incompatible interface change to the CLI. This change is a precursor to making the Dolt CLI work more naturally with a running Dolt SQL Server. The --data-dir argument (and similar) moved from a command argument to a dolt argument.

ie. dolt sql --data-dir becomes dolt --data-dir sql

Consult the PR for more details.

Per our new version number rules, this should have been a minor version bump instead of a patch release. This minor version bump rectifies the mistake somewhat.

Merged PRs

dolt

  • 5952: Print global arguments for 'dolt --help' but not 'dolt'
    Update the Dolt CLI To print the global flags when the --help flag is provided. New look:
    $ dolt --help
    Valid commands for dolt are
    init - Create an empty Dolt data repository.
    status - Show the working tree status.
    add - Add table changes to the list of staged table changes.
    diff - Diff a table.
    reset - Remove table changes from the list of staged table changes.
    clean - Remove untracked tables from working set.
    commit - Record changes to the repository.
    sql - Run a SQL query against tables in repository.
    sql-server - Start a MySQL-compatible server.
    sql-client - Starts a built-in MySQL client.
    log - Show commit logs.
    show - Show information about a specific commit.
    branch - Create, list, edit, delete branches.
    checkout - Checkout a branch or overwrite a table from HEAD.
    merge - Merge a branch.
    conflicts - Commands for viewing and resolving merge conflicts.
    cherry-pick - Apply the changes introduced by an existing commit.
    revert - Undo the changes introduced in a commit.
    clone - Clone from a remote data repository.
    fetch - Update the database from a remote data repository.
    pull - Fetch from a dolt remote data repository and merge.
    push - Push to a dolt remote.
    config - Dolt configuration.
    remote - Manage set of tracked repositories.
    backup - Manage a set of server backups.
    login - Login to a dolt remote host.
    creds - Commands for managing credentials.
    ls - List tables in the working set.
    schema - Commands for showing and importing table schemas.
    table - Commands for copying, renaming, deleting, and exporting tables.
    tag - Create, list, delete tags.
    blame - Show what revision and author last modified each row of a table.
    constraints - Commands for handling constraints.
    migrate - Executes a database migration to use the latest Dolt data format.
    read-tables - Fetch table(s) at a specific commit into a new dolt repo
    gc - Cleans up unreferenced data from the repository.
    filter-branch - Edits the commit history using the provided query.
    merge-base - Find the common ancestor of two commits.
    version - Displays the current Dolt cli version.
    dump - Export all tables in the working set into a file.
    docs - Commands for working with Dolt documents.
    stash - Stash the changes in a dirty working directory away.
    Dolt subcommands are in transition to using the flags listed below as global flags.
    The sql subcommand is currently the only command that uses these flags.  All other commands will ignore them.
    usage: dolt <--data-dir=<path>> subcommand <subcommand arguments>
    Specific dolt options
    -u <user>, --user=<user>
    Defines the local superuser (defaults to `root`). If the specified user exists, will take on permissions of that user.
    --data-dir=<directory>
    Defines a directory whose subdirectories should all be dolt data repositories accessible as independent databases within. Defaults to the current directory.
    --doltcfg-dir=<directory>
    Defines a directory that contains configuration files for dolt. Defaults to `$data-dir/.doltcfg`. Will only be created if there is a change to configuration settings.
    --privilege-file=<privilege file>
    Path to a file to load and store users and grants. Defaults to `$doltcfg-dir/privileges.db`. Will only be created if there is a change to privileges.
    --branch-control-file=<branch control file>
    Path to a file to load and store branch control permissions. Defaults to `$doltcfg-dir/branch_control.db`. Will only be created if there is a change to branch control permissions.
    

go-mysql-server

  • 1774: Added utf8mb3_tolower_ci
  • 1773: Add plan option for AntiJoins to be LeftJoin
    This PR adds a plan option to convert ANTI_JOINs to LEFT_JOINs with an additional filter condition.
    In some cases, the LEFT_JOIN performs better than the ANTI_JOIN.
    Additionally, this PR adds a new join hint for LEFT_OUTER_LOOKUP_JOINs.
    Fix for: #5825
  • 1767: Timezone improvements
    This PR starts handling some timezone differences between GMS and MySQL:
    • The NOW() and CURTIME() functions now respect the sessions's current time zone
    • Allows CONVERT_TZ to mix use of timezone names (e.g. UTC) and timezone offset strings (e.g. +00:00)
    • Adds some skipped tests for timestamp input/output session timezone conversion
  • 1738: ICU Regex Implementation
    To try and prevent memory leaks, I'm having the regex only work under a callback. The idea is that we'll do all of our matches under the callback, using a node placed by an analyzer rule. I think this approach should work, and it'll expand to any other functions within the regex that need to hold memory that will be freed later.
    For now though, this portion works, and I have a small test showing such.

Closed Issues

  • 1771: utf8mb3_tolower_ci not implemented

Latency

Read Tests MySQL Dolt Multiple
covering_index_scan 1.93 2.71 1.4
groupby_scan 12.3 16.71 1.4
index_join 1.16 4.1 3.5
index_join_scan 1.12 2.07 1.8
index_scan 30.81 54.83 1.8
oltp_point_select 0.14 0.49 3.5
oltp_read_only 2.81 8.43 3.0
select_random_points 0.29 0.75 2.6
select_random_ranges 0.35 1.14 3.3
table_scan 30.81 55.82 1.8
types_table_scan 70.55 173.58 2.5
reads_mean_multiplier 2.4
Write Tests MySQL Dolt Multiple
bulk_insert 0.001 0.001 1.0
oltp_delete_insert 5.0 5.67 1.1
oltp_insert 2.48 2.91 1.2
oltp_read_write 6.21 15.27 2.5
oltp_update_index 2.48 2.91 1.2
oltp_update_non_index 2.52 2.86 1.1
oltp_write_only 3.49 7.3 2.1
types_delete_insert 4.91 6.55 1.3
writes_mean_multiplier 1.4
Overall Mean Multiple 2.0

Don't miss a new dolt release

NewReleases is sending notifications on new releases.