github dolthub/dolt v1.49.1
1.49.1

23 hours ago

Merged PRs

dolt

  • 8831: Expand ItemAccess::itemWidth to 32 bits
    ItemAccess is a class used to read data out of prolly tree nodes. Because the itemWidth field was limited to 16 bits, reading any value larger than 2^16 bytes would result in silent truncation.
    We don't usually store values this large, although it should be safe to do so.
    This issue was discovered because the new JSON chunker (introduced in #7912) always stores embedded strings as a single chunk, so a document containing a string larger than 32KB would result in a node with a single value whose length didn't fit in 16 bits.
    While we were investigating this issue, we created #8723 to disable the new JSON chunker in the presence of these long strings. This PR partially reverts that one, resuming the smart chunking of JSON even in the presence of large embedded strings.
  • 8817: Bug fix for encoding extended types in keys
    This PR allows certain Doltgres extended types to be correctly serialized as part of keys

go-mysql-server

  • 2845: Added external function provider
    This adds an external function provider, currently needed for Doltgres to get function creation working. This is intended to be a temporary measure until a more permanent solution is developed (which may involve modifying Dolt's DatabaseProvider).
  • 2844: Correctly skip skipped assertions in transaction tests
  • 2843: Replace golang.org/x/exp with stdlib
    These experimental packages are now available in the Go standard library.
    1. golang.org/x/exp/slices -> slices (https://go.dev/doc/go1.21#slices)
    2. golang.org/x/exp/maps -> maps (https://go.dev/doc/go1.21#maps)
    3. golang.org/x/exp/constraints -> cmp (https://go.dev/doc/go1.21#cmp)
    4. golang.org/x/exp/rand -> math/rand/v2 (https://go.dev/doc/go1.22#math_rand_v2)
  • 2842: fix panic when comparing system set type against other types
    Comparison between systemSetTypes and other types is still not correct.
    It appears that MySQL actually treats @@sql_mode as just a string.
    This PR only fixes the panic
  • 2839: fix case insensitivity and return type for str_to_date
    This PR fixes an issue with the str_to_date function where we wouldn't match string literals in the date with literals in the format, because we were improperly converting them to lowercase.
    Additionally, this PR has it so the str_to_date function returns a time.Time instead of a string. This gets us closer to MySQL behavior over the server.
    fixes: #8807
  • 2833: refactor create procedure and call procedure
    This PR refactors a ton of the stored procedure behavior to more closely match MySQL.
    Changes:
    • properly error when creating procedures/triggers/events in other stored routines
    • allow create procedure statements that reference symbols (tables, views, procedures, etc) that don't exist (yet).
    • remove unnecessary analysis and building work
    • simplify building plan.Call nodes
      Partially addresses: #8053

Closed Issues

  • 8807: Issue with "T" when using str_to_date

Don't miss a new dolt release

NewReleases is sending notifications on new releases.