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 negativeno_conflicts
column returned byCALL DOLT_MERGE
andSELECT DOLT_MERGE
has been replaced with a simplerconflicts
column.CALL DOLT_MERGE
additionally returns afast_forward
column which indicates if the merge was a fast-forward. Iffast_forward
is0
, then you must perform a commit to reach a clean working set state.
Closes #3560
Replaces uses ofSELECT DOLT_MERGE
withCALL 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 tablet
with the following schema:In commit1 we insert the following row:CREATE TABLE t ( pk int PRIMARY KEY, a text );
In commit2 we rename col1 to col2:INSERT INTO T VALUES (1, 'one');
In the old behavior, we would see the following diffs.ALTER TABLE T RENAME col1 TO col2
Between init and commit1:
No diff between commit1 and commit2.+ (1, 'one')
In the new behavior, we would see the following diffs.
Between init and commit1:
No diff between commit1 and commit2. (We actually do expect to see+ (1, NULL)
~ (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 implementssql.IndexedTable
interface and uses dolt lookups.
Currently treatsto_
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 upenginetest/enginetest.go
intoinitialization.go
andevaluation.go
. The intent is to leave only test banks inenginetest.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 orcall 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