This is a patch release, containing bug fixes and improvements
- Bug fix for stale data in certain queries
- Bug fix for wire and shell representation of certain
GEOMETRY
values - Performance improvement for joins
- Better error message for multi-line query input with
dolt sql
- Better bulk inserts for
dolt dump
Merged PRs
dolt
- 3663: Removed exclamation marks in README
- 3662: go/libraries/doltcore/sqle/index: Invalidate schema-dependent cached durable state when root value changes.
- 3660: go/libraries/doltcore/sqle/index: Fix races in index caching using atomics.
- 3653: selecting geometry types now show up in hex form, rather than raw ASCII
- 3651: index join scan
- 3648: Unskipped bats tests
- 3647: go/libraries/doltcore/sqle/index: Cache durable.Index values for primary and secondary data.
Introduce an instance-local cache which can refresh its value when
the working root of the underlying table changes.
In 4300e84 we changed DoltIndex
implementations to not store row data. Index implementations are retrieved at
analysis time and used at query time, and storing row data in them breaks
things like static lookups and index joins in things like prepared statements
and stored procedures.
Retrieving the row data from the doltdb.Table instance for every lookup turns
out to have a sizeable performance impact, especially on something like a large
join. - 3639: Improved error message for multistatement query failing during exec
While debugging #3512 , realized that if a multistatement exec fails during query execution, Dolt doesn't tell you which line failed. Updated the error message to include the failing statement's line and added a bats test for the original customer issue.
Depends on: dolthub/go-mysql-server#1066 - 3620: Add bulk export parameters to dump
Addressed issue #3015
Note thatmysqldump
uses the--no-autocommit
flag which wraps each table with aSET AUTOCOMMIT=0
andCOMMIT=1
cc: https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html#option_mysqldump_no-autocommit - 3571: support
dolt cherry-pick
- version 1
This PR is the first version ofcherry-pick
support.- Only a single commit is allowed with cherry-picking
- No flags or subcommands are supported
- No conflicts, leaves the working set clean if conflicts occur
- Only available on CLI
- No renaming or dropping a table in cherry-pick commit
- Cherry-picking a merge commit is not supported
- Always creates a new commit except there is no changes.
go-mysql-server
- 1069: Removed array type and non-compliant functions
- 1068: Serialize Geometry better
Fixes the SQL methods for point, linestring, polygon, and geometry to return the hex representations of the values.
Additionally, fixes the hex method to allow conversion of point, linestring, polygon, and geometry.
Fix for: #3645
Companion PR: https://github.com/dolthub/dolt/pull/3653/files
TODO: move geometry serialization package out of dolt into gms (in next pass). - 1066: Improved error message for converting unsupported geospatial types
Improved the error message to tell customers that a specific geospatial data type they tried to use is currently unsupported.
Fixes: #3512 - 1064: Add more exhaustive cases for int, uint conversion
fix for #3632 - 1063: Adding a unique index should throw an error if duplicate rows exist