v1.41.3
版本发布时间: 2024-07-04 08:48:25
dolthub/dolt最新发布版本:v1.42.18(2024-09-05 13:59:55)
Merged PRs
dolt
-
8102: Bug fix: binlog heartbeat
nextLogPosition
field Heartbeat binlog events must have a correctNextLogPosition
field that matches up with the previous events that have been sent in the stream. If not, the replica will shutdown the binlog stream. https://github.com/dolthub/dolt/pull/8087 fixed this issue, but didn't account for when a heartbeat event is sent after the initial Format Description event, but before any user initiated requests. The way to trigger this is tostart replica;
on the replica, then don't run any commands on the primary and let the first heartbeat go out after the binlog stream has been up for 30s. - 8101: go.mod: Migrate from gopkg.in/square/go-jose.v2 to gopkg.in/go-jose/go-jose.v2. Bump version. Picks up fix for CVE-2024-28180.
-
8088: [no-release-info] Add additional tests for manipulating large JSON documents and fix corner case bugs in JSON_LOOKUP and JSON_INSERT
This PR adds additional tests for calling JSON_INSERT on large JSON documents. It also fixes three issues with IndexedJsonDocuments:
- Some operations are not supported by the new optimized implementation for JSON_LOOKUP, such as wildcards on array paths (eg
$[*]
). Instead of returning an error, we detect the error and fall back on the original implementation. - Attempting to insert a value into a document could cause an infinite loop.
- We would fail to read some keys from an IndexedJsonDocument's StaticMap if the document contained arrays.
- Some operations are not supported by the new optimized implementation for JSON_LOOKUP, such as wildcards on array paths (eg
go-mysql-server
-
2583: [stats] Disable histogram bucket merging for now because it mutated shared memory
Merging buckets in the current format is unsafe:
- we collect statistics for an index where two buckets have overlapping values
- we execute a join using the index with overlapping values, and use a merge algorithm to combine those buckets. The merged bucket is synthetic, but the statistics used for the join is also synthetic, so this all works as expected.
- a future indexscan selects the compressed range from before, accessing one of the synthetic buckets created by the join
- we error
invalid bucket type: *stats.Bucket
at the end of the indexscan when adding the filtered histogram with a synthetic back to the implementor-type statistic EditedmergeOverlappingBuckets
to not share memory, but also I'm not sure if merging buckets is a common performance win in most cases, so disabling for now
- 2580: Remove a duplicate column from information_schema Just what it says on the tin. This duplicate column causes problems for DuckDB when attempting to connect to doltdb databases.
Closed Issues
Performance
Read Tests | MySQL | Dolt | Multiple |
---|---|---|---|
covering_index_scan | 2.07 | 2.97 | 1.4 |
groupby_scan | 13.7 | 17.32 | 1.3 |
index_join | 1.34 | 5.28 | 3.9 |
index_join_scan | 1.27 | 2.57 | 2.0 |
index_scan | 34.33 | 54.83 | 1.6 |
oltp_point_select | 0.18 | 0.46 | 2.6 |
oltp_read_only | 3.49 | 7.7 | 2.2 |
select_random_points | 0.33 | 0.77 | 2.3 |
select_random_ranges | 0.39 | 0.9 | 2.3 |
table_scan | 34.95 | 56.84 | 1.6 |
types_table_scan | 75.82 | 144.97 | 1.9 |
reads_mean_multiplier | 2.1 |
Write Tests | MySQL | Dolt | Multiple |
---|---|---|---|
oltp_delete_insert | 8.13 | 6.09 | 0.7 |
oltp_insert | 3.82 | 3.02 | 0.8 |
oltp_read_write | 8.58 | 13.95 | 1.6 |
oltp_update_index | 3.89 | 3.07 | 0.8 |
oltp_update_non_index | 3.89 | 3.02 | 0.8 |
oltp_write_only | 5.37 | 6.43 | 1.2 |
types_delete_insert | 7.7 | 6.67 | 0.9 |
writes_mean_multiplier | 1.0 |
TPC-C TPS Tests | MySQL | Dolt | Multiple |
---|---|---|---|
tpcc-scale-factor-1 | 98.43 | 32.02 | 3.1 |
tpcc_tps_multiplier | 3.1 |
Overall Mean Multiple | 2.07 |
---|
1、 dolt-darwin-amd64.tar.gz 34.5MB
2、 dolt-darwin-arm64.tar.gz 33.26MB
3、 dolt-linux-amd64.tar.gz 34.56MB
4、 dolt-linux-arm64.tar.gz 32.66MB
5、 dolt-windows-amd64.7z 16.93MB
6、 dolt-windows-amd64.msi 35.99MB
7、 dolt-windows-amd64.zip 30.79MB
8、 install.sh 3.09KB