Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Created by
brew bumpCreated with
brew bump-formula-pr.release notes
DOLT_COMMITTER_DATEandDOLT_AUTHOR_DATEenvironment varsThese two new environment vars perform the same function as
GIT_COMMITTER_DATEandGIT_AUTHOR_DATE, respectively. They set the two timestamps associated with newly created commits ondolt commitanddolt merge.Setting these two environment variables allows the deterministic creation of commit hashes, as requested in dolt merge doesn't produce deterministic hashes dolthub/dolt#6724
go-mysql-server
Star.IsNullable()This reverts AliasedExpr.InputExression should be compared case insensitive dolthub/go-mysql-server#2039 because the fix was not correct choice for the issue HEX(*) fails with panic dolthub/dolt#6659.
It catches invalid reference to non-existent table or column in existing view. This includes
SELECTqueries on a view that references table or column that was removed or renamed.Note: For now, It does not catch references to invalid functions or users without appropriate privilege cases and queries other than
SELECTqueries.Fixes: Renaming a table breaks views using that table dolthub/dolt#6691
order byon unioned schemasWhen unioning two
SELECTstatements that have different column types, we would get -1 duringassignExecIndexes, resulting in a panic.This PR fixes the issue by matching on unqualified column names when we don't have an exact match.
We don't find these matches because the second table has an unqualified alias over the column name because it is wrapping it in a convert node.
We have many tests that are marked skip/broken, but they are working now.
This PR unskips and cleans up some of these skipped tests.
Added schemas, stats, query plans for:
Added
plangento auto-update the tests.We cannot parse all of the TPC-DS query plans yet. I saw some ROLLUP and aggregation validation errors.
Excluding data ops benchmark because the plans are not interesting.
This PR adds event execution logic implementing EventScheduler interface in the engine.
Notes:
DISABLE ON SLAVEstatus is not supported. It will be set toDISABLEby default.Corresponding Dolt changes: Feature: Event execution for
dolt sql-serverdolthub/dolt#6108vitess
COM_STMT_EXECUTEwhennew_params_bind_flagis setIn the previous implementation, we assumed that the way the MySQL Protocol specifies Column Definitions is the same as how it specifies parameter types for
COM_STMT_EXECUTE. The difference lies specifically in the flags that come after the field type.When reading/writing a field type (for a Column Definition), MySQL expects/writes a 1 byte wide
enum_field_typefollowed by a 2 byte wide Column Definition Flag.However, when reading a
COM_STMT_EXECUTEpayload (that specifies parameters throughnew_params_bind_flag), MySQL indicatesparameter_typeswith the same 1 byte wideenum_field_typefollowed by a 1 byte wide flag that indicates signedness.So basically, read
0x80for COM_STMT_EXECUTE parameters, but read/write0x20forfield_types/column definitions.I'm assuming MySQL does it this way because the majority of the Column Definition Flags are nonsensical/meaningless when paired up with parameters to prepared statements. Regardless, this was a subtle bug, and we should have tests for parsing
COM_STMT_EXECUTEwithnew_params_bind_flag.Fixes Out of Range for bigint unsigned with question mark dolthub/dolt#6728
CREATE TABLE t AS (...) UNION (...)This allows parsing of
CREATE TABLE ASstatements when the expression being used to create the table is a set operation like UNION, INTERSECT, or EXCEPT.The "AS" keyword is typically optional. But this change only allows set ops to be used with CREATE ... AS when the AS is explicit. This is to avoid an ambiguity in the current grammar when attempting to parse
CREATE TABLE t (, where what follows could be a set op or a table definition. Fully matching MySQL's spec here would require rewriting our grammar to avoid this ambiguity, which is outside the scope of the PR. However, this PR makes us strictly more correct than we were before.SECONDARY_ENGINE = NULLThis is a simple change to allow parsing a NULL value for the SECONDARY_ENGINE attribute for CREATE TABLE and ALTER TABLE statements.
Closed Issues
FOUND_ROWS()returns incorrect results