Merged PRs
dolt
- 9875: docker-entrypoint.sh: Add timeout queries to reliably configure users and database
Companion: dolthub/vitess#437
Fixes resource hang issues (i.e.,connect: connection refused
) fordocker-entrypoint.sh
when configuring users and database in the script using queries with a newDOLT_SERVER_TIMEOUT
variable that will wait for successful execute (default: 5 minutes) for multiple iterations.
Fixes issue withdolt sql-server
waiting on dolt process to free lock on database file.
Theroot
user is now created through the environment variables support ondolt sql-server
instead of queries. However, a query fallback is provided if your initialization scripts must use someUSER
orGRANT
related queries that conflict with the default behavior.
Query errors now include the actual query error message as a postfix to the author's message. The error below was manually created, however, it also shows syntax errors are immediately reported instead of fully terminating on timeout.2025-09-26 17:43:56+00:00 [Warn] [Entrypoint]: Environment variables failed to initialize root@%; docker-entrypoint-initdb.d scripts queries may have conflicted. Overriding root user... 2025-09-26 17:43:57+00:00 [Note] [Entrypoint]: Configured root@% for Dolt +---------------------+-----------+ | User | Host | +---------------------+-----------+ | event_scheduler | localhost | | __dolt_local_user__ | localhost | | root | % | | versioning | % | +---------------------+-----------+
Initialization scripts and launching2025-09-26 17:53:53+00:00 [Warn] [Entrypoint]: Environment variables failed to initialize root@%; docker-entrypoint-initdb.d scripts queries may have conflicted. Overriding root user... 2025-09-26 17:53:53+00:00 [ERROR] [Entrypoint]: Could not create root user: error on line 1 for query CREATE USER IF NOT EXITS 'root'@'%' IDENTIFIED BY 'rootpass' Error parsing SQL: syntax error at position 25 near 'EXITS' CREATE USER IF NOT EXITS 'root'@'%' IDENTIFIED BY 'rootpass' ^
dolt sql-server
has also been moved to this new timeout system to deal with desyncs due to system hangs and similar (e.g., file locks that don't release in time). To test this stability we also now launch multiple (40) docker instances at the same time.
go-mysql-server
- 3238: fix load data when escaped and enclosed are the same
We weren't actually escaping any characters and just deleting all the escaped characters.
fixes: #9884 - 3237: fix string to boolean comparison for
HashInTuple
expressions
fixes: #9883 - 3234: #9873: Add tests for
FOR UPDATE OF
Fixes #9873 - 3230: truncation refactoring and partial decimal truncation implementation
changes:- reorganize more tests
- fix partition test to truncate with warning
- fix JSON test to match MySQL's message
- partially fixes index comparison with type conversion
- refactor comparison logic for
IN
operator - decimal truncation
- add warning for negative unsigned cast
fixes: - #7128
- #9735
- #9840
partially addresses: #9739
vitess
- 437: docker-entrypoint.sh: Add VERSIONING to non-reserved
- 436: #9873: Add support
FOR UPDATE OF
Fixes #9873
Companion dolthub/go-mysql-server#3234
Closed Issues
- 9883: Boolean literal in IN clause fails to match truthy VARCHAR values
- 9884: Escaped characters not handled correctly in
LOAD DATA LOCAL INFILE
- 9873:
Airflow standalone
syntax errorfor update of
Performance
Read Tests | MySQL | Dolt | Multiple |
---|---|---|---|
covering_index_scan | 1.82 | 0.65 | 0.36 |
groupby_scan | 13.95 | 18.28 | 1.31 |
index_join | 1.52 | 2.43 | 1.6 |
index_join_scan | 1.5 | 1.39 | 0.93 |
index_scan | 34.95 | 30.26 | 0.87 |
oltp_point_select | 0.2 | 0.28 | 1.4 |
oltp_read_only | 3.89 | 5.37 | 1.38 |
select_random_points | 0.36 | 0.58 | 1.61 |
select_random_ranges | 0.39 | 0.61 | 1.56 |
table_scan | 34.95 | 32.53 | 0.93 |
types_table_scan | 75.82 | 130.13 | 1.72 |
reads_mean_multiplier | 1.24 |
Write Tests | MySQL | Dolt | Multiple |
---|---|---|---|
oltp_delete_insert | 8.43 | 6.67 | 0.79 |
oltp_insert | 4.18 | 3.25 | 0.78 |
oltp_read_write | 9.39 | 11.87 | 1.26 |
oltp_update_index | 4.25 | 3.3 | 0.78 |
oltp_update_non_index | 4.25 | 3.25 | 0.76 |
oltp_write_only | 5.28 | 6.55 | 1.24 |
types_delete_insert | 8.58 | 6.91 | 0.81 |
writes_mean_multiplier | 0.92 |
TPC-C TPS Tests | MySQL | Dolt | Multiple |
---|---|---|---|
tpcc-scale-factor-1 | 93.46 | 39.97 | 2.34 |
tpcc_tps_multiplier | 2.34 |
Overall Mean Multiple | 1.50 |
---|