Merged PRs
dolt
- 4315: create db when no current db is set should use the dbs available in session
If there is no current database selected, use databases that are available within the session and use the common format for those databases. - 4302: Changes to SQL output, including row summary, timing and empty set output
This changes the SQL shell to more closely match the MySQL shell by adding an "empty set" output, row count, and timing info.
It also gets rid of the use of pipelines for printing, replacing with SqlRowWriter implementations. - 4296: add
--author
flag to merge - 4267: Add dolt diff --skinny flag
Closes #790
Adds a--skinny
flag todolt diff
, which only shows primary keys and columns with changes.
Note thatwriteDiffResults
has been split into 2 functions -writeFilteredRows
andgetDiffRows
. The former is responsible for printing the rows, while the latter function collects the relevant columns, depending on if the--skinny
flag is active.
Also note that in the event of row addition/deletions, all columns will be included when the--skinny
flag is active.
go-mysql-server
- 1250: stripNodes in subquery block apply_hash_lookup optimization
A HashLookup requires two rules, 1) converting a JOIN -> SUBQUERY_ALIAS => JOIN => CACHED_RESULT(SQ), 2) converting the CACHED_RESULT into a HASHED_LOOKUP.
Prevent StripRowNode from breaking the pattern matcher for the first step. Other nodes can still interrupt the rule, but we have a test now at least. - 1249:
UpdateJoin
bug fixes
Bug fixes for #4288- qualifying check constraint expressions when multiple tables are being updated
- support finding UpdatableTables through ProcessIndexableTable and ProcessTable nodes
- erroring out when a table updater isn't available for a SetField expression, instead of silently dropping it
This does not address another UpdateJoin bug I just found while testing: #4304. Mentioning that one here so we have this context connected when we go to fix it.
I verified that Dolt's enginetest suite runs correctly with these changes.
- 1248: feat:(sql function) support last_insert_id with expr
mysql support parameter for LAST_INSERT_ID(expr), it is useful in upsert query when we want to get the updated recored id
ref: https://dev.mysql.com/doc/refman/8.0/en/information-functions.html#function_last-insert-id - 1246: adding
LEAD()
window function
Partial fix for: #4260
Closed Issues
- 4306: Panic on "conflicting" result types in
IF()
function - 790:
dolt diff --skinny
: Only show primary keys and columns with changes. Hide other columns. - 4311: Diff shows rows that have no diffs when a column has been added in the past.
- 4290:
CALL DOLT_CHECKOUT()
on an existing branch give "branch already exists" error - 4289:
dolt_diff_<table>
only works ifto_commit
is in your current branch - 4307: Feature Request: Way to create db in new format via sql
- 4295: Specify explicit author in
dolt_merge
procedure