Merged PRs
dolt
- 2132: Fixed VRW reference issues
Previously we were using memory value stores in some places, and everything seemed to be working, but I think our garbage collection changes exposed some inconsistencies that were causing bugs. This PR threads values stores to where they need to be and removes the majority of the places where we were using memory value stores.
This also solves a multitude of fuzzer issues, including thecorrupted database
error:
dolthub/fuzzer#337
And also the cause of some rows not being found and silently causing some operations to no-op (bats test included):
dolthub/fuzzer#597 - 2130: change panics to err on rollback
- 2129: hoist editor parameters up for greater flexibility
- 2126: inmem deaf
- 2124: integration-tests: Fix MySQLDockerfile for go 1.17.1.
- 2121: go/libraries/doltcore/sqle/altertests: Run unit tests in parallel.
- 2120: sql dolt_push and dolt_fetch no concurrency
- adds
select dolt_push('origin', 'master')
andselect dolt_fetch('origin')
- no locking
- refspec management is kind of busted, but it was like that before i added the sql functions
- fresh unit tests for sql push, fetch
- fetch cli + sql needs to be consolidated, but in a different PR
- adds
- 2119: Release
dolt sql-client
command - 2117: go: remotestorage: hedge_test.go: Fix these tests to be less flakey, use determinstic interleaving of goroutines and hedge requests by instrumenting hedger's time.After.
- 2114: Bump Go version to 1.17
- 2109: go/libraries/doltcore/dbfactory: Change our GRPC remote DB factory to take the GRPC dialer through a param.
Prior to this change, we used to set a global variable in the dbfactory package
which referred to whichever DoltEnv was loaded most recently. It was racey and
it has pretty terrible semantics. - 2106: Give each SQL query in the shell its own context, and fix SIGTERM behavior for SQL shell
Fixes #2101
Fixes #2025
Fixes #1155
Fixes #871 - 2104: Modify bad row error format
Closes #2103.
Before:After:A bad row was encountered while moving data. Bad Row: "03AGDBQ24TPRIFU0LRPRHLHU8KBOK5SQSMCT8BMVFJNANULFUG4RDHNZPOV4PJNMN0DOD1PM2V5AQQTFP1HZXZG5J5BJTP7BN0A8WLBZYMBJIRU7BWTYCNXTCQUD1UYWITEJIZR5EWWP1NM4OR40P6FTQL4NHKIA870UAFXSPRF0AIK_45YNRU98ZQOZQNJFKNF89FW9" is not valid for "VarString(utf8mb4_0900_ai_ci, 180, SQL: VarChar)" These can be ignored using the '--continue'
WIP: BATS test still needs to be writtenA bad row was encountered while moving data. Bad Row: "03AGDBQ24TPRIFU0LRPRHLHU8KBOK5SQSMCT8BMVFJNANULFUG4RDHNZPOV4PJNMN0DOD1PM2V5AQQTFP1HZXZG5J5BJTP7BN0A8WLBZYMBJIRU7BWTYCNXTCQUD1UYWITEJIZR5EWWP1NM4OR40P6FTQL4NHKIA870UAFXSPRF0AIK_45YNRU98ZQOZQNJFKNF89FW9" is not valid for column "street_physical" (type "VarString(utf8mb4_0900_ai_ci, 180, SQL: VarChar)") These can be ignored using the '--continue'
- 2102: sql server dolt_pull function no concurrency
- no concurrency management, missing mutexes
FetchRemoteBranch
andFetchTag
. Multiple server connections callingdolt_pull
will overwrite each others tempfiles, but not disrupt the workingset - a lot of the more involved
dolt_pull
bats tests are tightly coupled topush
andfetch
. I'll clean those up when I adddolt_push
anddolt_fetch
- afaik there are no special errors for
dolt_pull
, underlying fetch and merge steps are responsible for themselves
- no concurrency management, missing mutexes
- 2100: Added escape-analysis script for Windows
Builds on #2097 - 2098: /go/store/types: Don't compare
v
against itself - 2097: /go/utils: Escape analysis annotation tool for Goland
Generates Escape Analysis annotations when files are changed
- 2096: go/libraries/doltcore/table: Support partitioned table iterators for keyless tables.
- 2093: RMariaDB mysql-integration-test
executes the standard query/response set, and then tests prepared statements separately. - 2090: go.mod: Bump go-mysql-server to pick up date handling for YYYY-M-D format.
Fixes #2088. - 2080: Changed logging format to take advantage of logger changes in gms
New log message format sample:2021-08-31T12:04:36-07:00 DEBUG [conn 1] Starting query {connectTime=2021-08-31T12:04:36-07:00, query=SHOW VARIABLES LIKE 't%_isolation'}
- 2076: Refactor index editor
This takes the same approach to the index editor that was used with the table editor. It also has to thread a bunch of stuff through in order to create the appropriate editors in different situations. - 2049: Bh/dbea refactor
- 2032: Method to add a commit and update working set together atomically
go-mysql-server
- 538: sql/datetimetype.go: Handle parsing dates like 2021-8-3 correctly.
- 537: server/handler.go: Have ComPrepare correctly return null result schema metadata for write statements.
This fixes our server's interaction with clients which expect the result
metadata for a write statement to be NULL. One such client is RMariaDB. See:
#2084.
Closed Issues
- 2103: Column names are not shown in a readable way when table imports fail
- 2101: in the sql shell: describe stopped working after hitting ctrl-c during a query
- 2025:
dolt sql
shell has static query time - 1155: catch interrupts in dolt sql during query execution / output
- 871: Dolt handles NOW() incorrectly
- 2088: Some values fail to convert from POSIXct (R) to DATETIME (Dolt)
- 2084: Data doesn't transfer to Dolt from R using the RMariaDB client