github dolthub/dolt v1.86.6
1.86.6

7 hours ago

Merged PRs

dolt

  • 10947: go/store: nbs,types: Fix some error paths in GC.
    1. If gcCopier.copyTablesToDir failed after its writer.Finish() call succeeded, it would cancel the writer but leave gcc.writer != nil. Then markAndSweeper.Close would call gcc.cancel and get a spurious error from the failed writer.Cancel call.
    2. ValueStore.gc would fail to Close MarkAndSweeper if Finalize returned an error. The contract was that Close needed to be called on all paths.
    3. markAndSweepChunks dropped an error from newRotatingGCCopier.
    4. markAndSweeper Close early returned on an error from gcc.cancel, failing to close and cleanup incrementalGcc in that case.
  • 10750: Add incremental mode for garbage collection
    This feature is enabled by providing the --incremental-file-size flag to dolt gc or call dolt_gc() with a positive value, and can be enabled for automatic GC with a setting in the server's config.yaml, eg:
    behavior:
    auto_gc_behavior:
    incremental_file_size: 1000000
    
    In this example, after GC has written 1000000 bytes of leaf chunks (chunks that do not reference other chunks), it will finish the chunk file and begin writing a new one.
    There are two main reasons to do this:
    • Chunks written this way don't need to be tracked in the GC "visited set", reducing memory usage.
    • If GC is interrupted (for instance, it may be terminated by the OS for using too much memory), the already-processed chunks will be preserved, and subsequent runs of GC will have less work to do and require less memory. This provides an escape hatch for the scenario where a user has not run GC in so long that GC requires more memory to run than is available.

go-mysql-server

  • 3527: Truncate invalid UTF-8 on INSERT IGNORE and warn on LIKE with bad charset pattern
    • INSERT IGNORE with invalid UTF-8 in a utf8mb4 column now truncates at the first bad byte
    • LIKE with an invalid UTF-8 pattern emits warning 1300 and return no match
    • Exported TruncateInvalidUTF8 from sql/types
      Fix #10924
      Blocks #10926
  • 3526: Update for functional expression index parser changes
    Parser changes support multiple functional expressions, or a mix of columns and functional expressions in an index. GMS still restricts functional indexes to a single functional expression, but that restriction will be removed in the next PR.
    Also includes a new test interface that Doltgres will use when integrating with functional indexes.
    Depends on: dolthub/vitess#466

vitess

Closed Issues

  • 10924: dolt table import should error when importing invalid charset
  • 10945: RemotesAPI push: working-set-stale bug from #10807 still reproducible in v1.86.5

Don't miss a new dolt release

NewReleases is sending notifications on new releases.