Merged PRs
dolt
- 7257: Update MySQL Connector/J integration tests to cover table-qualified field lookups
When using the MySQL Connector/J library to pull out a field value from a row, you can specify the column name, or you can specify the table-qualified column name (e.g.myTable.col1
). dolthub/go-mysql-server#2235 fixed the missing metadata, and this PR adds an integration test for the MySQL Connector/J library to ensure we don't regress.
Related to #7247 - 7252: dolt_pull performance improvement
dolt_pull
currently performs unnecessary FastForwards for remote branches. There is a more optimal mechanism to fetch all remotes, actions.FetchRefSpecs, and by using that we greatly increase the speed ofdolt_pull
when there are lot of remote branches. - 7249: fix minver
- 7248: omit empty on new yaml items
go-mysql-server
- 2238: [memo] RequiredIndex interface
Some table nodes need to be executed as IndexScans with mandatory filters. The new interface makes this transparent to join planning.
re: #7256 - 2236: trim floats when hashing
fmt.Sprintf("%v", x)
writes floats with ax.0
which causes it to never equal hashed strings.
Initially, I wanted to always convert the LHS to the type in the RHS, but this is difficult when there are multiple types in the RHS
fixes #7246 - 2235: Add source table and database to field metadata in wire responses
The field metadata messages we were sending back for a result set did not include the source table and source database for fields. This caused a behavior difference from MySQL where the table-qualified column name (e.g.table1.ID
) would not work with Dolt when using the MySQL Java Connector library. See #7247 for more details.
Updates to unit tests for theschemaToFields
code are in this PR, and I'll follow up with a PR in the Dolt repo that updates our MySQL Connector library integration tests to add coverage for the table-qualified column name. - 2234: use cached decimal type for casts
Fixes a variety (hopefully 49) of SQLLogicTests involvingCASTS(... AS DECIMAL)
- 2233: Add logging for
COM_RESET_CONNECTION
command
Adding debug logging to see when clients are sending this command, even though we don't implement it yet. For example, ORMs may send this command when returning a connection to a connection pool, so it may be helpful to implement this command and clear out session state in that case. - 2230: guard ctx and session with nil
fixes #7235
vitess
- 298: parse empty begin end block in trigger
14 SQL correctness tests are failing because we throw syntax errors on queries like this:CREATE TRIGGER t1r1 AFTER UPDATE ON t1 FOR EACH ROW BEGIN END;
- 297: Fixing the
version
keyword to not require identifier quotes
Theversion
keyword still required identifier quoting in some usages, such asSELECT * FROM base.version;
. See #7237 for more details.
This change moves theversion
keyword into the main list of non-reserved keywords. There was one conflict from use of theversion
keyword in thefunction_call_keyword
rule, but it turns out that use ofversion
there is not required. We have an existing test for using theversion()
function, so I didn't add a new one.