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 bump
Created with
brew bump-formula-pr
.release notes
Previously
dolt sql-server
would error if there were existing databases and they were missing any of the remotes listed as cluster replication remotes in the config.yaml. This changes it so that those remotes are automatically created at startup instead.Previously these changes would only get replicated to the first database in the cluster.
Updates the warning message for
dolt table import
to print when the import schema does not match the destination table's schema, not just when there are fewer columns in the import file. Also updates the warning message to list the column names that differ between the import file and the destination table's schema.Resolves: Warning during csv import dolthub/dolt#6113
@autocommit
When a transaction commit conflict occurs, the next steps to take are slightly different depending on whether
@autocommit
is enabled or not. This PR changes the error message we return to describe those steps in more detail when@autocommit
is enabled.Added assertions that result set column name metadata is populated for the C++ and Rust MySQL Connector libraries.
on update
expressionsThis PR add serialization for
ON UPDATE
expressions on columns.This change requires changes to the flatbuffer schema as we have to store an additonal field.
Older versions are able to read and modify databases in the newer version without any error, but any
ON UPDATE
functionality is missing (which makes sense). Tables withON UPDATE ...
defined on them won't be displayed and performing anUPDATE
won't trigger any of the defined expressions to run. So, this should be a Feature Verison bump.companion pr: support
on update current_timestamp
dolthub/go-mysql-server#2188fixes
ON UPDATE CURRENT_TIMESTAMP
in column definition does not update TIMESTAMP dolthub/dolt#6030go-mysql-server
ctx.Span
with nil checkWe have places where we call
expression.Eval(nil, nil)
.The null context causes a panic when we call Span on it.
This PR just adds a nil check inside the
*context.Span()
receiverfixes Panic when Using BETWEEN and CASE WHEN dolthub/dolt#7154
I wanted to separate 1) moving cardinality into stats objects, and 2) changing costing to start at join relations, but I kept finding small bugs and hard a time separating the two. So i did the move, fixed bugs along the way, and then regenerated plans with the changes.
Our current join plans are less useful after we start doing costed join reordering, which makes it kind of annoying that these refactors are dominated by mostly irrelevant plan changes. Still I think the current refactors were necessary, because we need the costing changes and users will still use stats-less tables. Soon I will start adding more unit-esque plan tests that are equally comprehensive but test fewer things, like whether certain plans' cardinalities are accurate, and how closely cost estimates reflect execution runtime.
Dolt side is passing: [no-release-notes] bump for carder refactor dolthub/dolt#7156
When using prepared statement, some create statements were being stored in the cache with delimiter at the end of it, which does not trimmed when executing the prepared statement. This causes consistency issue where in cases of storing a create statement, it will have the delimiter whereas running the same query without it being prepared statement trims before storing.
Currently, we don't have proper handling of nodes that aren't
RangeHeap
s in theRangeJoinIter
.This PR makes it so that we don't create plans that would have these nodes.
Additionally, we error instead of panicking when we see an invalid node in this area.
fixes panic: interface conversion: sql.Node is *plan.Filter, not *plan.RangeHeap dolthub/dolt#7139
This PR fixes:
Put index costing inside join planning, so that in the future join planning will have better cardinalities (statistics) for join ordering. Most of the changes will look like refactoring the way we expression index lookups in the memo. I attempted to do this in a way that makes as few changes as possible to join planning; the goal here is to set me up for rewriting cardinality checks with stats objects. It didn't go as cleanly as I wanted, I ended up shifting a lot of join plans back to lookup plans because HASH_JOIN was beating LOOKUP_JOIN in several key places.
One downside of the current PR is that it converts a sysbench MERGE_JOIN into a LOOKUP_JOIN. I would prefer fixing this in the next PR when I do a bigger costing overhaul.
Variety of fixes for join hinting, correctness, etc.
At some point we appeared to fix this:
Functional Dependency anaylsis on lookup joins doesn't handle when key expression is an Arithmetic expression dolthub/go-mysql-server#1893
on update current_timestamp
This PR adds support for handling and executing
ON UPDATE
column expressions, which are triggered when an update is applied to any column in the row.TODO:
now()
for default, but not the syntax foron update
fixes
ON UPDATE CURRENT_TIMESTAMP
in column definition does not update TIMESTAMP dolthub/dolt#6030Closed Issues
ON UPDATE CURRENT_TIMESTAMP
in column definition does not update TIMESTAMPUPDATE counters SET value = value + 1 WHERE key = 'foo';
should be concurrency-safe