Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Created by
brew bump
Created with
brew bump-formula-pr
.release notes
dolt pull
commandThis was reported by a user: Panic in
calculateMergeConflicts
duringdolt pull
if sql-server is running dolthub/dolt#7653This was covered by a test, but it turns out that the pull, fetch, and push tests were all using SQL_ENGINE=remote-server incorrectly.
Fork interface for how to store database statistics. Can either store in the original source database, in a separate database in
.dolt/stats
, or an alternative implementation like a lsm that will have easier append only semantics. The implementation for the noms chunkstore isn't particularly efficient, we will not deduplicate common chunks between branches.How the new code is organized:
statspro
has generic interfaces for how a Dolts-specific stats implementation works.statsnoms
is an implementation that uses a second database at.dolt/stats
to store statistic refs. The stats refs are the same, just now they are named by the branch they reference (ex:refs/statistics/main
). So storage is the concern of the concrete implementation. The common interface forces the implementation to handle branches. The branch switching instatsnoms
are just named refs.A high level of what's happening during certain operations: There are still two operations, load and update. Load now either initializes the stats database at
.dolt/stats
or loads existing stats. Update is the same, ANALYZE or auto refresh.Most of the changes are just forcing the logic through a generic interface. There were import cycle issues (
dtables
) and deadlock issues for creating a database (dolt provider takes a lock that prevents doing certain operation on the session in the stats provider) that motivated packaging decisions.go-mysql-server
First pass on connecting the GMS layer with the Dolt layer for handling callbacks when the SQL server is acting in binlog primary mode, through the new
BinlogPrimaryController
interface. This new interface pretty closely mirrors the existing callback interface for replica callbacks, theBinlogReplicaController
interface.Related to Dolt binlog Provider Support dolthub/dolt#7512
Closed Issues