Merged PRs
dolt
- 4221: Bug fix for Tuple.Compare to return consistent results when comparing against a null value
Tuple.Compare
/Tuple.Less
returns inconsistent results when comparing different types against a null value. This caused non-null values for most types to be ordered before null values, but other types like time/date/datetime to have non-null values after null values in the index. That resulted in incorrect query execution because the index range reader saw the null values and exited out before ever evaluating the non-null values.
Fixes: #4199 - 4214: Updating arg docs for
dolt commit -a
Quick arg doc update for behavior change in: #4161 - 4208: go/store/nbs: byte_sink.go: Fix panic in some cases when we retry table file upload in push.
The buffered byte sink finish() implementation was expected to only be called,
but Reader() could be called multiple times for a retried upload. - 4201: proto,go/.../remotestorage: Add repo_token support.
doltremoteapi can return an opaque token which makes it cheaper to access the repository compared to just using the RepoId. This updates protos and remotestorage implementation to cache that token and use it for future accesses of the same repository. - 4198: Various changes for the
__DOLT__
bounty scoreboard - 4197: Add support for ancestor references in database revision specifiers
Enables use of~
and^
to reference ancestors in database revision specifiers.
Fixes: #2146 - 4196: Add support for table-level collations
This is the Dolt side of dolthub/go-mysql-server#1215. - 4194: Support json output for
dolt diff
Fixes #2243 - 4193: create db with specific format depending on currentDB format
CREATE DATABASE
on new-format DB should create DB with new-format(same format as the currentDB) - 4177: Bats tests for charsets and collations
This is a first pass and includes skipped tests for the bugs: #4172, #4170, #4168 - 4161: dolt commit -a ignores new tables
Fixes #4133.
This PR will fix the-a
flag indolt commit
committing new tables.
The bulk of this PR is fixing old integration tests, as many of them assumes the old behavior ofdolt commit -am
.
go-mysql-server
- 1215: Collation fixes
Fixes the following issues:- #4172
- #4168
CREATE TABLE
and friends will now take the table collation into consideration. This extends to adding a modifying columns, which will use the table collation when no collation is specified. Additionally, thelatin1
character set has been added. Lastly, we properly block usage of non-implemented character sets and collations.
- 1214: Bug fix for table alias resolution
Fixes: #4183 - 1207: fix some filters being dropped from history tables
Changes:- run
pruneTables
inprePreparedSelector
, to transfer projections correctly - added
Filters()
getter intosql.FilteredTables
interface transferProjections
also copies over table filters
Test PR:- #4163
- run
Closed Issues
- 4199: No results with WHERE IS NOT NULL on a datetime field
- 2146: Support more revision spec in database names
- 4200: recursive cte used inside a union overflow
- 4212: Using files that define JSON with
dolt sql --file
ordolt sql <
results in weird error at position 2 - 3772: WHERE EXISTS ( SELECT * ... ) returns
operand should have 1 columns, but has n
- 4133: In the
dolt commit
, the-a
option adds new tables, not just modified or deleted ones. - 4168: Defining Charset and Collation in table specification not supported
- 4172: Panic when using
latin1
charset andlatin1_german1_ci
collation - 2243: dolt diff output format
- 4159: starting sql-server in new format db starts old format
- 4182: Unresolved Column panic
- 4183: Column Resolution errors with Table Aliases