github dolthub/dolt v0.36.1
0.36.1

latest releases: v1.41.2, v1.41.1, v1.41.0...
2 years ago

This is a feature release, adding initial support for spatial types. Read more here:

https://www.dolthub.com/blog/2022-02-09-spatial-types/

Also newly supported are recursive common table expressions (WITH RECURISVE).

This release also addresses a number of bugs:

  • dolt incorrectly dropped a not null constraint when dropping a primary key
  • Several DDL statements now work with no current database selected
  • Bug fix in JSON_CONTAINS
  • Bug fix for NOT BETWEEN expressions

Merged PRs

dolt

  • 2747: Update README to mention DoltLab
  • 2746: libraries/doltcore/table/editor: fix dropped test errors
    This fixes two dropped test err variables in libraries/doltcore/table/editor.
  • 2745: Retain not null constraint on primary key columns when dropping primary key
    • Fixes adding primary keys using db.table syntax and unskipped bats test for it
    • Fixes issue of making all columns NOT NULL when adding pk with alter table
      (With the above issue, dropping pk bats test was not catching retaining of null constraint)
    • Fixes retaining NOT NULL constraint when dropping pk with alter table
  • 2743: /go/store/prolly: flatbuffers-based prolly tree
    • replaces Node with flatbuffers-based mapNode
    • temporarily removes map-count accounting from Map
  • 2741: go/go.mod: Bump gopsutil. Gets rid of deprecated warning on macOS.
  • 2737: /go.mod: run go mod tidy
  • 2736: Skipped bats test for alter table db.table add primary key
  • 2733: manually go get gms main
  • 2728: Fixing BATS test for table check constraint validation errors
  • 2718: prevent creating and altering table with spatial types as primary key
  • 2716: go/store/prolly: Prefix Range Scans for Prolly Trees
    Expands range-scan functionality for pkg prolly to include ranges defined on a prefix of key fields. This is necessary to support partial indexes and secondary index in Dolt. Various refactors were made to support this change:
    • removed support for "reverse" ranges, which aren't used anywhere
    • refactored range iters for prolly.Map to use a nodeCursor to track the end of the range
  • 2715: go/store/datas: Decouple pull/push/clone from store/types, and move it into its own package.
  • 2714: BATS tests for Spatial Types
  • 2710: remove stmt conversion
  • 2702: Correct ff/no-ff functionality for Dolt_Merge() and add tests for DOLT_MERGE when autocommit is off

go-mysql-server

  • 784: fix alter table add pk
    Added case for getting non current database name in transaction for AlterPk
  • 783: recursive CTEs
    RecursiveCte node impl with tests for joins, group by, and subquery
    aliasing.
    RecursiveCte's are not supported in DML statements. Nested recursive
    CTE's and nested subqueries are not supported yet. Aliasing is not
    neatly split down the middle on either side for RCte unions; only the
    dual table can have alias clashes on either side of the CTE for now.
    Cyclical recursion will timeout at depth 20. This will likely need a
    rewrite with better global aliasing to support infinitely nestable
    RecursiveCte's.
    Indexed table lookups are not applied to RecursiveCte tables currently
    because of a bug in the memory impl.
  • 781: Expose Typ field in sql.RangeColumnExpr
  • 780: Expose enginetest.CreateIndex() for testing
  • 779: fix json_contains error handling
    Fixed tests for "Fix JSON Extract on struct" PR
  • 778: Properly implemented SHOW GRANTS and SHOW PRIVILEGES
    SHOW GRANTS was a shell that always returned the same result, and it has now been properly implemented (without USING since active roles aren't in yet). Also added SHOW PRIVILEGES.
  • 777: Add PeerGrouper, simplify count and rank window funcs.
    Count has a default range framer now, matching MySQL and
    Postgres's behavior. Move custom peer grouping logic into
    a formal framer to simplify ranking agg functions, which
    should simplify other rank funcs in the future.
  • 775: add groupby column check
    Any alias column that is non alias table column will not have table name assigned.
  • 774: Prevent invalidating table check constraints when altering table schema
    Updated logic for dropping and renaming columns to ensure that no table checks are referenced.
    Further improvements should eventually be made to ensure that table check constraints aren't modified by other schema alterations, such as modifying a column's type.
  • 773: Added roles, revoking, and dropping users and roles
    This adds roles, along with implementing the accompanying statements and functionality. In addition, we may now revoke privileges and roles, and also drop users and roles.
  • 772: ST_LATITUDE and ST_LONGITUDE functions
  • 771: RANGE window framing with rangeFrameBase
    Support RANGE window frames, adds unit tests for framing
    and enginetests for queries.
    Count needs to be rewritten to support RANGES. Better validation
    for range expression/bound matching would be helpful.
  • 770: fix not between function and or logics
    Fixed handling NOT BETWEEN function was incorrect
    Added missing logic for OR operator
  • 761: ST_SWAPXY function
  • 760: ST_DIMENSION function
    TODO: missing cases for multi geometry types

vitess

  • 116: tools.go hack.
  • 115: go.mod: Bump to go 1.17.

Closed Issues

  • 2683: [Request] Bring back JSON/ add YAML schema export
  • 2713: dolt push: invalid or corrupt table file
  • 2705: Strange behavior of DOLT_MERGE()
  • 2679: SQL commit should not be required after a fast forward dolt_merge() with autocommit off
  • 2711: [Feature Request] Oh my Zsh support for local dolt folders

Don't miss a new dolt release

NewReleases is sending notifications on new releases.