github dolthub/dolt v1.76.7
1.76.7

17 hours ago

Merged PRs

dolt

go-mysql-server

  • 3302: Wrap nullable hoisted filter in IsTrue
    fixes #10070
    Filters that evaluate to null in an EXISTS or IN subquery context should be treated the same as false. When hoisted out of the subquery, nullable filters need to be wrapped in an IsTrue expression to ensure that they are still treated the same as false when they evaluate to null.
    Not doing so was causing a bug where rows were being dropped from NOT EXISTS if the filter evaluated to null. Since the filter expression was evaluated to null, the NOT expression wrapping it would evaluate to null as well. This caused the filter iterator to reject the row because it did not evaluate to true. Wrapping the filter expression with IsTrue ensures that nulls are then evaluated to false, which will then evaluate to true with NOT.
  • 3300: Move hoistOutOfScopeFilters rule to DefaultRules
    fixes #10064
    hoistOutOfScopeFilters was not running as part of finalizeUnions, causing us to not correctly analyze queries that were parts of unions
  • 3297: #10050: Fix JSON conversion for dolt when using TextStorage
    Fix #10050
    • Extended JsonType.Convert to unwrap sql.StringWrapper values before decoding.
    • Add convertJSONValue to handle string and []byte like inputs.
  • 3296: use type switch instead of Fprintf for grouping key
    FPrintf is slow; it's quicker to use strconv for ints/floats + hash.WriteString and Sprintf + hash.WriteString for all other types.
    benchmarks: #10054 (comment)

Closed Issues

  • 10070: Unexpected Result in ANTI-JOIN
  • 10064: Unexpected UNION ALL Result of INNER JOIN and ANTI JOIN
  • 10050: TEXT doesn't convert properly to JSON

Don't miss a new dolt release

NewReleases is sending notifications on new releases.