Merged PRs
dolt
- 7833: Bug fix: Apply replication settings for newly cloned databases
Dolt SQL servers using remote-based replication will pull new databases if the @@dolt_replication_remote_url_template system variable is configured, but those new databases weren't getting configured to continue pulling updates from the remote.
This change registers the newly cloned databases asReadReplicaDatabase
instances, so that they will poll their remote and pull new commits. It also adds some additional logging to help debug issues with remote-based replication. - 7829: Changed RootValue into an interface
Companion:- dolthub/doltgresql#232
This changes theRootValue
into an interface. Every function that seems unique to Dolt'sRootValue
has been changed into a function variable, with the variable being overwritten from Doltgres to point to a different function.
- dolthub/doltgresql#232
- 7799: Archive Serialization and Deserialization
This PR doesn't direclty change any Dolt behavior. It just lays the groundwork for archive creation and reading. Currently, no file is materialized by this code as unit tests exercise it with ByteSinks. - 7780: Reformat journal index
Change the way we write journal index lookups. Each write appends a lookup to abufio.Writer
that lazily writes to disk. And after some increment we flush a CRC/root value record for consistency checking the index during bootstrap. This avoids big stalls for flushing a batch of index records. We also only write anaddr16
now, because that's what we load into the default chunk address map.
Databases with the older format will pay a one-time startup penalty to rewrite the journal index. In testing this appears to be 5-10% of the import time for the database.