github dolthub/dolt v1.52.3
1.52.3

latest releases: v1.59.4, v1.59.3, v1.59.2...
4 months ago

Merged PRs

dolt

  • 9161: Upgrade mysql docker test to use python3.9
  • 9158: Fix NULL default bug when merging branches with different schemas
  • 9153: add NUL character to string increment
    A customer reported a bug with lookup_join.
    It turns out in the prolly iterator, we weren't correctly incrementing strings.
    We were appending "0" (character 0) when we should've been appending "\000" (the NUL character).
    tests: dolthub/go-mysql-server#2956
  • 9151: go: Thread Context a bit. Cleanup some uses of sql.NewContext.
  • 9147: go: sqle/dsess: Serialize transactions on a given database branch, instead of globally on all databases and all branches.
    This change also makes it possible for a long-running COMMIT operation to cancel while it is waiting for the transaction lock.
  • 9142: Add plumbing command for manually creating commit
    dolt admin createchunk is a set of undocumented commands for manually writing chunks into the chunkstore. They're a useful tool for writing tests, fixing repos that somehow get into an unexpected state, and hacking on Dolt in ways that the higher-level commands don't support.
    dolt admin createchunk commit is the first such command; it creates a commit chunk and prints the new commit hash to standard output.
    I picked createchunk committo implement first because it already has utility: it can be used to flatten commit history. Dolt already allows flattening commit history via dolt rebase, but this method introduces a lot of overhead: it walks the commit history to build the rebase table, then walks it again to apply the rebase. For large histories (the kind of histories you might want to squash to save space), this is unacceptably slow.
    With this command, flattening a history can be done with dolt admin createchunk commit --root "$rootValueHash" --desc "flattened history" --parents "refs/internal/create" --branch "$branchname" --force
    The --branch flag causes the named branch to point to the newly created commit. This flag is mandatory when using the CLI, because the chunk journal is required to end with a root hash and chunks are only flushed to the chunk journal when there's a new root hash.

go-mysql-server

  • 2954: no implicit comits for temporary tables.
    When we initially implemented implicit commits, we did not exclude temporary tables. This PR addresses that issue.
    These queries no longer implicitly commit the ongoing transaction:
    • create temporary table tmp_tbl(...),
    • insert into table tmp_tbl ...,
    • drop temporary table tmp_tbl
      However drop table tmp_tbl will still cause an implicit commit even though tmp_tbl is defined as a temporary table (not sure if this is intentional from MySQL side).
      Additionally, alter table tmp_tbl ... will also cause an implicit commit, but we don't support altering temporary tables (issue).
      Fixes: #9149

Closed Issues

  • 9149: CREATE TEMPORARY TABLE during a transaction causes a commit

Don't miss a new dolt release

NewReleases is sending notifications on new releases.