You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
8632: fix error message for duplicate unique key violation on out of band types
Certain types are stored out of band (like TEXT and BLOB), so we compare their addresses to test for existence. Consequently, the error message would contain the hash rather than the contents.
This PR fixes the formatting to print the prefix.
fixes: #8629
8630: Fixed issues with branch control
This is primarily to fix issues with:
#8623
For the first issue, we did not actually update the longest match counter, and it was therefore being ignored. The variable existed, but it was not being updated. I think this went so long without being caught (even with all of the tests in enginetests and bats) due to how we handle expression folding, where subset entries are completely ignored if a superset already exists.
The second issue is somewhat similar to the first, in that we were not checking the permission set when determining whether a new row is actually a subset. If an existing row is a superset, but the permissions are more restrictive than the new row, then it's not an actual superset, since it has more restrictive permissions. This is even in the documentation, so it's a simple mistake of forgetting to add that check to the code itself.
Lastly, the bats tests have been updated such that they rely on sockets now, and Windows does not support sockets. This was not caught since most Windows developers have moved to primary development on Doltgres, so this at least allows such developers to run the bats tests locally again.
8624: Update sql status to not report changes for unstaged tables that have changed but not visibly.
Sometimes tables can change their hashes despite having no visible changes. The two ways I identified where this can happen are:
The table has different column tags from the ancestor because it was originally a different table that got renamed.
The table stores whether it's in a conflict and stores the hash of the other branch's table and the common ancestor table.
If these are the only changes to a table, we shouldn't report it as changed in dolt status.
These tables can still be staged and report as modified once staged.
8619: README updates to explain MySQL 8.4 requirement
Updates README to explain how to install mysql 8.4, since the 9.0 innovation release does not include support for the mysql_native_password auth plugin by default.
go-mysql-server
2776: bump mysql version
Certain tools expect a higher version of MySQL.
Currently, the latest stable version of MySQL is 8.4.4, but 8.0.23 is the minimum needed to satisfy mydumper.
Additionally, this alters the version() method to select directly from the @@version system variable.
related: #8592
2775: prevent creating and dropping mysql and information_schema databases
fixes: #8621
2765: increase column size for information_schema.processlist.state
The State column in our information_schema.processlist table is different than the MySQL implementation because we include progress information. As a result, it is possible to exceed the 64 character limit that the column is defined as.
However, thius means deviating from MySQL's definition of the table.
2764: information_schema uppercase rule doesn't apply to processlist table
Selecting from information schema typically results in all uppercase column names, except for the information_schema.processlist table, which follows the non info schema casing (matches the projection).
Relevant MySQL Bug: https://bugs.mysql.com/bug.php?id=84456
Closed Issues
8629: Erroneous output with unique constraint on TEXT or TINYTEXT
8607: Creating two tables with the same schema and database, dropping one of them, and renaming the second table to the dropped table creates an entry in status but not diff
8622: Potential issue with longest matching branch namespace control rules