Merged PRs
dolt
- 9005: go/store/nbs: Fix perf regression in taking backups.
1.50.0 introduced a perf regression which mainly effects taking backups to AWS or GCS. This is a partial fix which makes backups perform as before when they are going to a completely new destination. Incremental backups to an existing store are still slower. We continue to work on addressing the regression. - 9003: Up server config default max conns from 100 to 1000
- 8994: Bug fix for TypeCompatibilityChecker to ignore ExtenedTypes
The following query caused a panic in Doltgres, becauseDoltTable
was usingTypeCompatibilityChecker
to test if the column type change was compatible.TypeCompatibilityChecker
wasn't able to handle theExtendedType
instance and panic'ed. This change makesTypeCompatibilityChecker
ignore extended types, since it doesn't know enough about them to determine if a type change is compatible or not. - 8993: Bump golang.org/x/net in /go/gen/proto/dolt/services/eventsapi
Bumps golang.org/x/net from 0.23.0 to 0.36.0.
updated-dependencies:- dependency-name: golang.org/x/net dependency-type: indirect ...
- 8992: Remove unnecessary
hashicorp/go-uuid
dependency
We are already usinggithub.com/google/uuid
for UUIDs. This dependency was accidentally introduced. - 8990: Remove unnecessary
hashicorp/go-uuid
dependency
We are already usinggithub.com/google/uuid
for UUIDs. I think this dependency was accidentally introduced.
Line 24 in b7c0ddb
Line 71 in b7c0ddb
- 8988: Test for
INSERT ... ON DUPLICATE UPDATE
withdolt_docs
table
Adds a test for the bug fix in dolthub/go-mysql-server#2892 - 8979: Bump golang.org/x/net from 0.23.0 to 0.36.0 in /go/gen/proto/dolt/services/eventsapi
- 8850: refactor: using clear to simplify the code
This is a new built-in function added in the go1.21 standard library, which can make the code more concise and easy to read.
go-mysql-server
- 2895: Bug fix: resolve column default expressions for ALTER COLUMN nodes
When building plan nodes to handle altering a column's nullability or type, without respecifying the full column definition, the built node should ensure any column default expressions are resolved.
This originally showed up as a panic in Doltgres, because Doltgres'TypeSanitzer
found theUnresolvedColumnDefault
instance and tried to invoke operations on it.
Note that it's not currently possible to trigger this issue with Dolt or GMS because MySQL has a more limited syntax than Postgres for altering a column without respecfiying its full column definition, and Dolt/GMS does not support that syntax currently (e.g.ALTER TABLE t ALTER COLUMN SET VISIBLE
). - 2892: Bug fix: Call
StatementBegin
for all TableEditors used ininsertIter
insertIter
can be given asql.RowInserter
and asql.RowUpdater
, and when theON DUPLICATE UPDATE
clause is present, it can use both to update a table.StatementBegin
was only being called on thesql.RowInserter
and not for thesql.RowUpdater
, which caused a problem for some implementations (e.g.docsWriter
) that depend onStatementBegin
being called.
Test for this added to the Dolt package (#8988), using thedocWriter
implementation where this bug was originally discovered. - 2891: look through table aliases for table names when applying triggers
Table aliases on update statements break triggers, because we are unable to find any trigger matches on the alias.
The fix is to find the real table name when searching for triggers.
fixes: #8926 - 2890: Sort tables by FK dependencies for
DROP TABLES
When multiple tables are supplied toDROP TABLES
, MySQL (and also Postgres) will sort the tables by foreign key dependencies, so that the tables can be dropped cleanly.
Resolves dolthub/doltgresql#1272 - 2889: don't erase dual table projection
The ruleeraseProjection
erases the projection fromselect ''
, which causesvalidateSchemaSource
to error.
Adding a case invalidateSchemaSource
resulted in dummy rows being outputted, so I think this is the best solution for now.
fixes: #8977 - 2888: Allow type conversions for foreign key checks
This PR introduces a new method for the ExtendedType interface and uses it to allow converting between compatible column types during a foreign key check. - 2887: Correct JSON_LENGTH with an object parameter
When JSON_LENGTH is passed a JSON object, it should always return the number of fields in the object. However, due to a typo, it currently only returns1
for objects. This PR corrects that behavior. - 2886: reintroduce
last_insert_id
discrepancy
Apparently thelast_insert_id
in ok result, is not the same asselect last_insert_id()
.
When there is an auto_increment column, the insert_id in the OKResult is the first value that increments the auto_increment value.
Reverts some changes from: dolthub/go-mysql-server#2616
fixes: #8914
Closed Issues
- 8942: Log when
max_connections
is reached - 7428: Feature request for supporting health and readiness checks in Dolt DB
- 5997: Pro-active
dolt gc
warning - 5785:
dolt table import -u
inserts and updates duplicate keys instead of failing. Unclear what the desired behavior is. - 5535:
dolt pull
from DoltHub does not complete (gets stuck) in hours when a clone takes minutes - 5371:
dolt clone
loads all dolt databases in working directory into memory - 8926: BUG: BEFORE UPDATE Trigger Not Working in Dolt
- 3629:
dolt
cli commands take a long time for large databases - 2322: dolt persisted globals --global are not initialized during sql engine creation
- 1987: Automatically GC during SQL server execution
- 864: Postgres compatible mode for
dolt diff -r sql
anddolt patch
- 8975: Cannot merge branches when two indexes covers same column
- 2847: BUG: Element types don't match MySQL: query-results have inconsistent types