github dolthub/dolt v0.40.6
0.40.6

latest releases: v1.43.1, v1.43.0, v1.42.20...
2 years ago

This is a patch release with features and bug fixes.

  • Schema change for result of DOLT_MERGE procedure
  • Bug fix for procedure aliases in information_schema tables
  • Bug fix for dolt init with name and email
  • Changes to how dolt_diff matches columns across schema revisions

Merged PRs

dolt

  • 3564: CALL DOLT_MERGE now returns fast_forward and conflicts columns
    The double negative no_conflicts column returned by CALL DOLT_MERGE and SELECT DOLT_MERGE has been replaced with a simpler conflicts column. CALL DOLT_MERGE additionally returns a fast_forward column which indicates if the merge was a fast-forward. If fast_forward is 0, then you must perform a commit to reach a clean working set state.
    Closes #3560
    Replaces uses of SELECT DOLT_MERGE with CALL DOLT_MERGE in the engine tests. Both the sql function and procedure have similar test coverage. We currently don't support multiple return columns with sql functions, so the change was made to test the fast_forward column.
  • 3561: error instead of blob panic
  • 3557: checkout proc startpoint
  • 3554: add bats test for procedure alias not showing in information_schema.routines table
    Added bats tests for procedure aliases.
    Depends on dolthub/go-mysql-server#1042
  • 3549: Bug fix for not saving explicit name and email settings to local config
    Fixes: #3546
  • 3547: add cherry-pick to ClientEventType
  • 3538: Unskip newly working bats tests
  • 3535: change dolt_diff system table to coerce schema by name only
    The dolt_diff_{table_name} system table now coerces schema by name only. The dolt_diff table uses the schema at head to interpret the tables at every prior commit. Previously the schema of the table at each prior commit was matched to the head schema using tags with a name fallback. Now it is matched by name only.
    Let's consider an example between the new and old behaviors. Define table t with the following schema:
    CREATE TABLE t (
    pk int PRIMARY KEY,
    a text
    );
    In commit1 we insert the following row:
    INSERT INTO T VALUES (1, 'one');
    
    In commit2 we rename col1 to col2:
    ALTER TABLE T RENAME col1 TO col2
    
    In the old behavior, we would see the following diffs.
    Between init and commit1:
    + (1, 'one')
    
    No diff between commit1 and commit2.
    In the new behavior, we would see the following diffs.
    Between init and commit1:
    + (1, NULL)
    
    No diff between commit1 and commit2. (We actually do expect to see ~ (1, 'one') here but this is a TODO and known issue.)
    Also adds warnings to new storage format when a column value coercion fails.
  • 3514: Apply index lookups on diff tables
    diff_table now implements sql.IndexedTable interface and uses dolt lookups.
    Currently treats to_ columns as primary key, so index lookups on work on those.
    Fix for: #3438

go-mysql-server

  • 1043: enginetest: Validating Enginetest Harness
  • 1042: exclude procedure aliases from showing information_schema.routines table
    Not show procedure aliases in information_schema.routines table
    Dolt PR tests this change
  • 1041: cleanup enginetest
    Splits up enginetest/enginetest.go into initialization.go and evaluation.go. The intent is to leave only test banks in enginetest.go
    This is a pure refactor, no logical changes were made.
  • 1038: Added a few foreign key tests
  • 1037: Parallelize IndexedTableAccess on DoltDiff tables

vitess

  • 168: Remove glog dependency, reduce log levels, remove all logutilpb usage and support.
  • 167: go/vt/{vttls,tlstest}: Sync from upstream; supports CRL, minimum TLS version configuration.
  • 166: proto: Move .proto files to dolthub/vt subdirectory and package name.
    Removes global proto registry conflict with vitessio/vitess, as per #155.

Closed Issues

  • 3560: call dolt_merge() needs to return two things: fast-forward (yes/no) and conflicts (yes/no)
  • 3552: Dolt stored procedure alias show in Table plus
  • 3558: call dolt_commit('-am', ...) not committing all changes or call dolt_merge() leaves dirty working set on fast forward
  • 3546: dolt init --user --email isn't respected in succeeding commits
  • 3501: Does aws remote work with assume role?
  • 155: Vitess protocol buffer namespace conflict

Don't miss a new dolt release

NewReleases is sending notifications on new releases.