Merged PRs
dolt
- 3783: go: doltdb: commit_hooks,hooksdatabase: Ensure that replication hooks work for replicating HEADs when the commit itself is already on the remote.
- 3779: Allow backticks in index names
Fixes: #3776
Related to: dolthub/go-mysql-server#1109 - 3774: add
dolt_tags
system table anddolt_tag()
procedure
Addsdolt_tags
system table andDOLT_TAG()
procedure. - 3771: Add test case for hanging sockets in Ubuntu
This pr modifies the knex testing suite to ensure all sockets are closed when db.destroy() is called.
The updated test correctly fails on an older version of GMS and passes on the updated version of GMS. - 3761: Bump ruby-mysql from 2.9.14 to 2.10.0 in /integration-tests/mysql-client-tests/ruby
Bumps ruby-mysql from 2.9.14 to 2.10.0.Commits
631384e
version 2.10.04124bec
support OPT_LOAD_DATA_LOCAL_DIR5b47f75
update constants and client error from 8.044520a1
Merge pull request #28 from duerst/master20ace1b
Update charset.rbb2e2ac4
version 2.9.146cf6ee1
support JSON type on MySQL 5.798a0954
test for MySQL 5.7ed7063a
add collations and constants from MySQL 5.7.10- See full diff in compare view
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ruby-mysql&package-manager=bundler&previous-version=2.9.14&new-version=2.10.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/dolthub/dolt/network/alerts). - 3759: Add
--track
flag to dolt checkout
Adds--track
flag for dolt checkout.
Fixes local branch tracking remote tracking branch with different namesdolt checkout --track origin/feature
will create new branch namedfeature
and set its upstream toorigin/feature
remote branchdolt checkout -b branch1 --track origin/feature
will create new branch namedbranch1
and set its upstream toorigin/feature
remote branchdolt checkout -b branch1 origin/feature
will guess remote branch. If remote branchorigin/feature
exists, it will set upstream to it.
- 3757: GMS type simplifications
- 3755: CLI write commands server-locked
- 3753: go/libraries/doltcore/sqle/index: rangePartitionIter: Remove an unnecessary Mutex. PartitionIter.Next() is not called concurrently.
- 3748: Adds
our_diff_type
andtheir_diff_type
todolt_conflicts_table_name
our_diff_type
andtheir_diff_type
reports the row diff between the base and our/their rows. It is one ofadded
,modified
, orremoved
. - 3743: fix for datetime and time types for exporting parquet file
Fixes #3517
Issues for importing parquet file from Dolt export to pandas.- Datetime type is exported as timestamp to avoid out of range issues.
- Time type is exported as timedelta to avoid being parsed as time and panics if val is negative
- 3672: readme: add MacPorts install info
https://ports.macports.org/port/dolt/
go-mysql-server
- 1110: Allow floats to specify precision and scale to match MySQL's behavior
MySQL supports a non-standard SQL syntax for specifying precision and scale for floats and doubles:
https://dev.mysql.com/doc/refman/8.0/en/floating-point-types.html
MySQL has marked this as deprecated, but existing MySQL applications (e.g. NocoDB) use this, so we should support it for compatibility. Doubles already support this notation.
Fixes: #3778 - 1109: Escape backticks in identifier names in
show create table
Updated show create table output to match MySQL's backtick escaping behavior.
Related to: #3779 - 1108: sql/session.go: Migrate from opentracing to opentelemetry.
- 1106: Close duplicated file descriptor
- 1104: Expand support for explicit column defaults in insert into statements
The previous code for handling explicit column defaults in insert into statements couldn't handle many valid cases of using explicit column defaults. To handle inserting explicit column default values in all cases, we need to move to a different approach.
This change leavesDefaultColumn
values in theplan.Values
expression tuples and updates the analyzer rules to parse and resolveColumnDefaultValues
in those expressions.
I've run the Dolt engine tests and verified that all pass with this change.
Fixes: #3741 and dolthub/go-mysql-server#527 - 1100: type convert simplifications
dolt bump here: #3757
This expands someConvert
methods into smaller helper functions that can be used more precisely:- avoid interface conversions
- sidestep bound checks that don't apply on the read path unless we are explicitly running a
Cast
These are a bit rough and ready, the interfaces and semantic check organization could be formalized, but gives 15% boost on table scan.
- 1099: Adjust limits on varbinary/json data
- Relaxed limit on incoming varbinary fields to allow for large JSON fields, which have a max size of 1GB and come across the wire as varbinary types.
- Added a test to ensure limits on varbinary fields are still being honored.
- Added a size limit on JSON fields at 1GB.
Fixes: #3728
- 1098: Added safety check to index filter pushdown
Closed Issues
- 3752: Socket not closing
- 3741: dolt fails to insert multiple values into table when using DEFAULT values
- 3776: Support backticks in index names
- 3778: Support floats with scale and precision
- 3517: Dolt export parquet NULL datetime errors
- 2548: Unsupported syntax:
LOAD DATA ... IGNORE 1 ROWS
- 3764: FAQ - Why would I use dolt instead of a local MySQL Instance with database data into VCS?
- 3728: prepare binding failed when fields length more than 65535
- 527: Gap in coverage for DEFAULT keyword in inserts