Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
dolt-windows-amd64.msi | < 22 hours ago | 44.0 MB | |
install.sh | < 22 hours ago | 3.2 kB | |
dolt-windows-amd64.7z | < 22 hours ago | 21.9 MB | |
dolt-windows-amd64.zip | < 22 hours ago | 38.3 MB | |
dolt-darwin-arm64.tar.gz | < 22 hours ago | 40.4 MB | |
dolt-darwin-amd64.tar.gz | < 22 hours ago | 42.2 MB | |
dolt-linux-arm64.tar.gz | < 22 hours ago | 39.7 MB | |
dolt-linux-amd64.tar.gz | < 22 hours ago | 42.3 MB | |
1.58.1 source code.tar.gz | < 23 hours ago | 12.3 MB | |
1.58.1 source code.zip | < 23 hours ago | 14.0 MB | |
README.md | < 23 hours ago | 3.8 kB | |
Totals: 11 Items | 295.2 MB | 0 |
Merged PRs
dolt
- 9579: Add option to memory-map archive file indexes This PR adds a configuration option to use mmap to access archive indexes instead of holding them entirely in process memory. The main benefits of this configuration are:
- Faster startup times for CLI commands
- Less memory usage for CLI commands that only need to access a small part of the storage layer It also comes with some downsides:
- mmap doesn't play well with Go's process scheduler (https://valyala.medium.com/mmap-in-go-considered-harmful-d92a25cb161d). Threads that are blocked on a page fault can't do something else while the page is being swapped in. This can cause performance issues in some cases.
- additional complexity: the code is different for unix vs windows, and this is the first time that a configuration setting can impact how the DB is loaded.
We have several ways to configure Dolt, and I opted to add this as a
dolt config
setting. Potentially a better solution would be something that lets users configure it separately for running a SQL server vs other commands, but that was outside the scope of the PR. I'm not really happy with how I ended up having to add an extra boolean parameter to a bunch of DB loading functions. If there was aDbConfig
struct or similar it would have ended up there, but I don't think there is. ## Testing Testing presents a challenge because this only effects loading archive files from disc, not archive files loaded over the network or created in memory. So the go unit tests (which use in-memory db files) can't test this. I added a bats test that asserts that chunk lookups still resolve when the config option is set, and asserts that an in-memory index is not used. I don't think we currently run bats tests for windows though, so the windows implementation may not be tested. - 9522: Root Object Conflicts & Merging
This adds a new root object type,
Conflict
, which is specially handled by Dolt to represent conflicts between root objects. As Doltgres does not have to worry about the CLI (only Dolt functions and system tables), the implementation surface area is a bit smaller, and this is specifically designed for conflict resolution via those methods. Prerequisite for: - https://github.com/dolthub/doltgresql/pull/1647
go-mysql-server
- 3143: Add stack trace in error from panic handler
- 3141: [#9628] - Fix UNION column mapping bug in nested multi-way operations Fixes [#9628] Fixed column scrambling in UNION queries with 3+ branches. The bug caused duplicate rows with wrong column positions when processing nested UNION operations like (A UNION B) UNION C. SetOp nodes now preserve schema order by recursing to left child instead of using sorted column set.
- 3137: Bug fix: ordered aggregates in triggers
Fixes a customer-reported issue using
group_concat()
in a trigger (https://github.com/dolthub/dolt/issues/9616). Also changes OrderedAggregation logic to account for one output scope field per-OrderedAggregation expression.
Closed Issues
- 9631:
handler caught panic: runtime error: slice bounds out of range
on SELECT...EXCEPT query - 9628: In the result of the following query, the dashboard_id field appears to be incorrect — it returns the value of entity_id instead of the actual dashboard_id.
- 9616: Error using
group_concat()
function in a trigger