v1.42.5
版本发布时间: 2024-07-27 07:50:02
dolthub/dolt最新发布版本:v1.42.18(2024-09-05 13:59:55)
Merged PRs
dolt
- 8162: Better error message when attempting to push from a shallow clone Push from a shallow clone is possible, but we should message better when it's not possible. In order to do this we need to error better from the Generational Chunk Store with a custom error. Fixes: https://github.com/dolthub/dolt/issues/8156
- 8158: fix no-op merge msg in cli Fixes: https://github.com/dolthub/dolt/issues/8148
-
8154: When removing from a secondary index during merging, use the pre-merge ordinal mapping, not the merged mapping, to identify the secondary key to be removed.
Basically, we have a bug where dropping a column on the remote side of a merge can interfere with updating secondary indexes.
Example:
Base Schema: (pk INT PRIMARY KEY, a TINYINT, b INT, UNIQUE KEY b_idx (b))
"theirs" drops column a
Merged Schema: (pk INT PRIMARY KEY, b INT, UNIQUE KEY b_idx (b))
In effect, the merger would see that in the final table,
b
is the second column. Then, when updatingb_idx
for each resolved row, it would use the second column of "ours" to find the index entry to remove. But this is incorrect, because the second column of "ours" isa
. If the user is lucky, these two columns will be different sizes and the merger will panic. But if the two columns are the same size, merge proceeds with an incorrect value. This will cause it to either fail to remove the old row from the secondary index, or remove a different row. Either way, the secondary index is now incorrect. - 8150: fix warnings in dolt sql shell This PR fixes a bug where warnings were incorrectly being suppressed in the dolt sql shell. The bug is caused by the shell making queries to check if the working set is dirty, what database we're on, and what branch we're on. The fix is to set a special flag in the session to not clear the warnings for those specific queries. companion pr: https://github.com/dolthub/go-mysql-server/pull/2605 fixes: https://github.com/dolthub/dolt/issues/8016
- 8124: [stats] limit stats boostrap to server start fixes: https://github.com/dolthub/dolt/issues/8123
go-mysql-server
-
2606: [memo] assume self-join stats cardinality continuity
Self-join stats estimation is particularly expensive because all of the buckets exactly overlap. If the index is unique, the cardinality distribution will not change. If the index is non-unique, the cardinality will expand proportional to
rowCount/distinctCount
.
sysbench perf here: https://github.com/dolthub/dolt/pull/8159before BenchmarkOltpJoinScan-12 1766 694524 ns/op 462834 B/op 8240 allocs/op after BenchmarkOltpJoinScan-12 2460 481166 ns/op 193569 B/op 7129 allocs/op
-
2605: add lock to prevent warnings from being cleared
This PR adds two functions to BaseSession that toggle a boolean, so integrators can prevent warnings from being cleared.
This is mostly useful for
dolt sql shell
. addresses https://github.com/dolthub/dolt/issues/8016
Closed Issues
1、 dolt-darwin-amd64.tar.gz 34.59MB
2、 dolt-darwin-arm64.tar.gz 33.33MB
3、 dolt-linux-amd64.tar.gz 34.64MB
4、 dolt-linux-arm64.tar.gz 32.73MB
5、 dolt-windows-amd64.7z 17.03MB
6、 dolt-windows-amd64.msi 36.08MB
7、 dolt-windows-amd64.zip 30.86MB
8、 install.sh 3.09KB