v1.47.1
版本发布时间: 2025-01-18 08:14:21
dolthub/dolt最新发布版本:v1.47.1(2025-01-18 08:14:21)
Merged PRs
dolt
-
8770: Speed up fetch when there are many tags which haven't changed
A user remarked that
dolt pull
took 2 hours to pull changes. This was the result of wasting time for every tag which had not changed. This change alters the tag iteration code to defers the loading of metadata until it's actually required. Testing against user takes less that 1min now. - 8753: make autoincrement tracker load async
- 8752: go/store/{nbs,types}: GC: Move the reference walk from types to nbs. Make the ChunkStore itself responsible for the reference walk, being given handles for walking references and excluding chunks as part of the GC process. This is an incremental step towards adding dependencies on read chunks during the GC process. The ChunkStore can better distinguish whether the read is part of the GC process itself or whether it came from the application layer. It also allows better management of cache impact and the potential for better memory usage. This transformation gets rid of parallel reference walking and some manual batching which was present in the ValueStore implementation of reference walking. The parallel reference walking was necessary for reasonable performance in format LD_1, but it's actually not necessary in DOLT. For some use cases it's a slight win, but the simplification involved in getting rid of it is worth it for now.
-
8747: go/libraries/doltcore/sqle/dprocedures: dolt_gc.go: Retry canceling running queries when waiting for safepoint establishment.
This allows
call dolt_gc()
to more quickly and realibly establish a safepoint if the call to safepointF() races with a new query beginning and being registered for the connection in the process list.
go-mysql-server
- 2820: Don't close ctx prematurely for single row results User reported cancelled context error which is caused by prematurely closing the iterator when the ctx is still needed.
-
2819: Don't force a table rewrite when appending extra values to the end of an enum.
Adding extra strings to the end of an enum type doesn't change the values for any of the existing strings. A table rewrite isn't necessary in this case.
If a specific table implementation does need to be rewritten when an enum type changes this way, they can still implement
ShouldRewriteTable
in order to force a rewrite anyway. -
2817: Use vector index when the
SELECT
cause has a projection. Due to some overly strict pattern matching in the vector index selection, we weren't always using the index when there was a projection involved: we were only applying the index in the presence of aTopN
node, but we also weren't generatingTopN
nodes in the case we had aLimit -> Project -> Sort
node structure. I was hoping that https://github.com/dolthub/go-mysql-server/pull/2813 would fix this, and I suspect there's improvements to GMS that would make this unnecessary. But for now, we should allow the pattern matching inreplaceIdxOrderByDistance
to apply a vector index lookup in this case.
Closed Issues
-
8769:
last_insert_id
gives 0 when 0 is explicitly specified for anauto_increment
primary key in an insertion
1、 dolt-darwin-amd64.tar.gz 35.88MB
2、 dolt-darwin-arm64.tar.gz 34.42MB
3、 dolt-linux-amd64.tar.gz 35.94MB
4、 dolt-linux-arm64.tar.gz 33.8MB
5、 dolt-windows-amd64.7z 17.96MB
6、 dolt-windows-amd64.msi 37.4MB
7、 dolt-windows-amd64.zip 32.15MB
8、 install.sh 3.15KB