Skip to content

Releases: dolthub/dolt

1.43.13

06 Nov 03:42
Compare
Choose a tag to compare

Merged PRs

dolt

  • 8534: Fix issue where JSON diff would fail under specific circumstances.
    If all of the following are true during a JSON diff operation:
    1. One document fits in a single chunk and the other doesn't
    2. The location of the chunk boundary in the larger document is also present in the smaller document. (It doesn't correspond to a location that was added or removed)
    3. The chunk boundary falls at the end of a value in the document (before the next key or comma/right brace/etc)
      Then the differ would fail to advance the prolly tree cursor and would incorrectly see the larger document as corrupt.
      This fixes that issue and improves the error messaging to make it seem less like the database is corrupt, since the error is much more likely to be a parsing bug like this one.

Closed Issues

  • 8530: Materialized View Gives PrivilegedDatabase Error

Performance

Read Tests MySQL Dolt Multiple
covering_index_scan 2.11 0.61 0.3
groupby_scan 12.98 16.71 1.3
index_join 1.37 2.26 1.6
index_join_scan 1.3 1.82 1.4
index_scan 34.33 55.82 1.6
oltp_point_select 0.18 0.27 1.5
oltp_read_only 3.49 5.37 1.5
select_random_points 0.34 0.65 1.9
select_random_ranges 0.39 0.64 1.6
table_scan 34.95 55.82 1.6
types_table_scan 75.82 147.61 1.9
reads_mean_multiplier 1.5
Write Tests MySQL Dolt Multiple
oltp_delete_insert 7.98 5.77 0.7
oltp_insert 3.75 2.91 0.8
oltp_read_write 8.58 11.24 1.3
oltp_update_index 3.89 2.91 0.7
oltp_update_non_index 3.89 2.86 0.7
oltp_write_only 5.37 5.88 1.1
types_delete_insert 7.7 6.09 0.8
writes_mean_multiplier 0.9
TPC-C TPS Tests MySQL Dolt Multiple
tpcc-scale-factor-1 99.97 41.75 2.4
tpcc_tps_multiplier 2.4
Overall Mean Multiple 1.60

1.43.12

05 Nov 23:46
Compare
Choose a tag to compare

Merged PRs

dolt

  • 8526: Avoid comparing sql.Types in dolt diff
    Fixes #8511
    Not all implementations of sql.Type are comparable. In particular, the enum type has a map field which makes the entire type incomparable.
    To avoid doing this comparison in the chooseMostFlexibleType function, we modify it to compare the underlying type tag instead. This PR also short-circuits computing a unified schema unless the schema has changed.
  • 8514: Better view caching
    Binding a table name to a catalog symbol previously always loaded the schemas table from disk to first attempt binding a view. Now we cache dolt_schemas using its hash. If the table does not exist, no views are defined, and we short circuit attempting to bind a name to a view.

go-mysql-server

  • 2733: disabling read-comitted
  • 2732: Get field string concat
    Replace fmt.Sprintf with string concat (+).
    BenchmarkSprintf-12        	18748582	        63.29 ns/op
    BenchmarkAddString-12    	39934550	        27.61 ns/op
    
  • 2729: move applyEventScheduler logic and eventscheduler to builder
  • 2712: Planbuilder Authorization
    • dolthub/vitess#372
      What's missing:
    • SHOW commands aren't in yet
    • information_schema doesn't restrict it's output yet
    • Need far more robust testing than what currently exists
      I think SHOW and information_schema will probably have the same solution, which may be to continue doing what we were doing before. Besides that, pretty much every works according to our current tests (outside of the aforementioned missing items).

vitess

  • 374: USE Revisions use proper auth
  • 373: Fixed printing bug in AliasedExpr node (was calling wrong print metho…
    …d, which doesn't work with custom formatters)
  • 372: Embedded Authorization

Closed Issues

  • 8511: Panic on dolt show

1.43.11

02 Nov 16:46
Compare
Choose a tag to compare

Merged PRs

dolt

  • 8522: libraries/doltcore/remotestorage: Improve connection reuse when fetching chunks from remote storage.
    Improves performance of fetches from DoltHub, sql-server, and doltlab.
    Improves some situations where routers and network access points do not respond well to clients which open a great number of connections to the same TCP endpoint, many of which live for a very short period of time.
    http.DefaultClient comes with a default MaxIdleConnsPerHost of 2. Fetching with a high number of concurrent downloads results in many connections not being reused efficiently because they cannot get back into the idle pool because it is so small. Here we increase the MaxIdleConnsPerHost to be large enough so that our active connections during a fetch will fit within it.
    Note: S3 limits a single HTTP connection to 100 requests, after which it is closed server-side. So currently dolt can still require a large number of new connections over the course of a pull, and the rate at which they are opened will depend on a number of factors including available throughput, round trip time resolving storage locations, etc. But this change will always be a big improvement over the old behavior.

go-mysql-server

  • 2729: move applyEventScheduler logic and eventscheduler to builder
  • 2727: fix dropped error in createView
  • 2719: move applyUpdateAccumulators
    This PR deletes the plan.RowUpdateAccumulator node, and directly injects an accumulatorIter into the rowexec tree in finalizeIters.
    Doltgres fix: dolthub/doltgresql#909

Closed Issues

Performance

Read Tests MySQL Dolt Multiple
covering_index_scan 2.07 0.62 0.3
groupby_scan 13.7 16.71 1.2
index_join 1.39 2.35 1.7
index_join_scan 1.27 1.89 1.5
index_scan 34.33 54.83 1.6
oltp_point_select 0.18 0.27 1.5
oltp_read_only 3.49 5.47 1.6
select_random_points 0.34 0.67 2.0
select_random_ranges 0.39 0.64 1.6
table_scan 34.33 54.83 1.6
types_table_scan 75.82 144.97 1.9
reads_mean_multiplier 1.5
Write Tests MySQL Dolt Multiple
oltp_delete_insert 8.13 5.88 0.7
oltp_insert 3.82 2.91 0.8
oltp_read_write 8.58 11.45 1.3
oltp_update_index 3.82 2.97 0.8
oltp_update_non_index 3.89 2.91 0.7
oltp_write_only 5.37 5.99 1.1
types_delete_insert 7.7 6.32 0.8
writes_mean_multiplier 0.9
TPC-C TPS Tests MySQL Dolt Multiple
tpcc-scale-factor-1 99.4 40.78 2.4
tpcc_tps_multiplier 2.4
Overall Mean Multiple 1.60

1.43.10

30 Oct 23:48
Compare
Choose a tag to compare

Merged PRs

dolt

  • 8508: Update more system tables for doltgres
  • 8505: Fix panics on schema changes
    fixes: #8504
    Use schema hash to detect when database statistics might be incompatible. Drops all statistics for schema update. This could be improved to a subset of statistics if we wanted in the future.
  • 8501: Bug fixes for replication
    • Convert @@server_id to uint32 value when it gets loaded as a string from config.json
    • Send binary logfile name in server heartbeat events, now required in MySQL 8.4
  • 8499: scanner more safe whitespace skip
  • 8497: Update the protobuf version from 22.0 to 28.3
    Also update README to reflect the bazel 6.3.0 version
  • 8493: add bats test for kill query <pid>
  • 8482: Move dolt system tables to dolt schema for doltgres

go-mysql-server

  • 2727: fix dropped error in createView
  • 2726: remove resolveDescribeQuery rule
    This rule just recurses into the analyzer, so we should just do it right at the beginning, so we should do it right away and avoid calling all other rules.
    This would be better/cleaner in the planbuilder, but we would need to tell the analyzer to not analyze this node or skip it somehow.
    It's possible to move this logic into analyzeWithSelector.
    It might be more difficult to move this above Analyze, as we'd have to put this logic in a variety of places.
  • 2723: server/handle.go: doQuery cleanup of some error handling.
  • 2722: internal/sockstate: Restore connection checking on Linux.
    GMS server handler is supposed to cancel running queries if the connection which issued them goes away. It does this by checking the connection state out-of-band anytime the query is running and canceling theh query if the connection goes away. The connection checking code is platform-specific and currently only works on Linux.
    In commit 538696b2c943ac7f3cacf1b67a3a5ff40ae64a00 I introduced a bug where the connection checking code tries to inspect the socket state of an already closed file descriptor. This change fixes the behavior so that the file descriptor is left open until the necessary socket state is extracted.
  • 2720: move wrapTriggerRollback logic
    This PR removes the plan.TriggerRollback and plan.NoopTriggerRollback node and applies the triggerRollbackIter directly.
    When there are multiple nested triggers (aka triggers that call other triggers), we used to have multiple nested trigger rollbacks with different savepoints. It turns out that was unnecessary and a single savepoint at the top of the iter tree is enough; when there's an error, it propagates back to the top, rollingback all changes.
  • 2718: use sqlCtx in handler
    Tests here: #8493
  • 2717: push Distinct nodes below Sort nodes
    This PR optimized queries like:
    select distinct i from t order by i;
    When there are many duplicate values in column i, it is much more efficient to eliminate duplicates first, then sort the results.
    There are somewhat unrelated optimizations left as TODOs.
    Optimize query: #8488

vitess

  • 373: Fixed printing bug in AliasedExpr node (was calling wrong print metho…
    …d, which doesn't work with custom formatters)
  • 371: support quoted character set values
    This PR adds syntax support for quoted character set values.
    fix: #8455

Closed Issues

  • 8504: Crash when refreshing statistics after a PK column change

Performance

Read Tests MySQL Dolt Multiple
covering_index_scan 2.07 0.63 0.3
groupby_scan 13.22 17.01 1.3
index_join 1.34 2.3 1.7
index_join_scan 1.27 1.89 1.5
index_scan 34.33 53.85 1.6
oltp_point_select 0.18 0.27 1.5
oltp_read_only 3.49 5.57 1.6
select_random_points 0.34 0.68 2.0
select_random_ranges 0.39 0.68 1.7
table_scan 34.33 54.83 1.6
types_table_scan 75.82 142.39 1.9
reads_mean_multiplier 1.5
Write Tests MySQL Dolt Multiple
oltp_delete_insert 7.98 5.88 0.7
oltp_insert 3.82 2.91 0.8
oltp_read_write 8.58 11.65 1.4
oltp_update_index 3.89 2.97 0.8
oltp_update_non_index 3.89 2.91 0.7
oltp_write_only 5.37 5.99 1.1
types_delete_insert 7.7 6.32 0.8
writes_mean_multiplier 0.9
TPC-C TPS Tests MySQL Dolt Multiple
tpcc-scale-factor-1 99.12 40.22 2.5
tpcc_tps_multiplier 2.5
Overall Mean Multiple 1.63

1.43.9

25 Oct 22:35
Compare
Choose a tag to compare

Merged PRs

dolt

  • 8494: Fix bounds check in import scanner
    fixes: #8495
    The before code checks whether s.i is valid after doing the buffer access:
    for ; unicode.IsSpace(rune(s.buf[s.i])); s.i++ {
    if s.i >= s.fill {
    s.read()
    }
    }
    The after code inverts the check to make sure s.i is valid before indexing into the buffer.
    for {
    if s.i >= s.fill {
    s.read()
    }
    if !unicode.IsSpace(rune(s.buf[s.i])) {
    break
    }
    s.i++
    }
  • 8479: cross-schema foreign key support for doltgres tables
    Depends on dolthub/go-mysql-server#2713

go-mysql-server

  • 2717: push Distinct nodes below Sort nodes
    This PR optimized queries like:
    select distinct i from t order by i;
    When there are many duplicate values in column i, it is much more efficient to eliminate duplicates first, then sort the results.
    There are somewhat unrelated optimizations left as TODOs.
    Optimize query: #8488
  • 2716: Update Parser interface documentation
    Updates documentation for the Parser interface to document the requirement that implementations must return vitess.ErrEmpty for empty queries. Without this, GMS will not handle empty queries correctly.
    Related to: dolthub/doltgresql#884
  • 2715: remove exchange node
    These aren't used anywhere, so it's getting removed.
    Partition still exists if we ever want to reimplement some version of this.
  • 2713: Support for schema names in foreign key definitions
    Adds schema names in many places required for foreign key operation in databases with schemas (doltgres)

Closed Issues

  • 8495: Import scanner performs bound check after buffer access

Performance

Read Tests MySQL Dolt Multiple
covering_index_scan 2.11 0.62 0.3
groupby_scan 13.7 17.01 1.2
index_join 1.37 2.3 1.7
index_join_scan 1.27 1.86 1.5
index_scan 34.95 54.83 1.6
oltp_point_select 0.18 0.26 1.4
oltp_read_only 3.49 5.37 1.5
select_random_points 0.34 0.61 1.8
select_random_ranges 0.39 0.62 1.6
table_scan 34.95 55.82 1.6
types_table_scan 75.82 144.97 1.9
reads_mean_multiplier 1.5
Write Tests MySQL Dolt Multiple
oltp_delete_insert 8.13 5.88 0.7
oltp_insert 3.82 2.91 0.8
oltp_read_write 8.58 11.24 1.3
oltp_update_index 3.89 2.97 0.8
oltp_update_non_index 3.89 2.91 0.7
oltp_write_only 5.47 5.99 1.1
types_delete_insert 7.7 6.32 0.8
writes_mean_multiplier 0.9
TPC-C TPS Tests MySQL Dolt Multiple
tpcc-scale-factor-1 99.08 40.84 2.4
tpcc_tps_multiplier 2.4
Overall Mean Multiple 1.60

1.43.8

24 Oct 18:25
Compare
Choose a tag to compare

Merged PRs

dolt

  • 8487: Fix server init race
    Fixes a race between setting the debug log output on DoltDb and running statistics configuration.
  • 8465: go/libraries/doltcore/doltdb: root_val.go: Restore ForeignKey TableNames noms serialization as just strings.
  • 8453: turn on stats collect by default
  • 8451: Stats purge and prune
    call dolt_stats_prune() should wipe the stats database disk contents, and replace with the currently tracked statistics. This is GC-like behavior.
    call dolt_stats_purge() should clear the stats database folder and reinitialize it empty. It's equivalent to rm -rf .dolt/stats and then dolt initing a new stats directory.
    TODO: more testing and docs

go-mysql-server

  • 2715: remove exchange node
    These aren't used anywhere, so it's getting removed.
    Partition still exists if we ever want to reimplement some version of this.
  • 2714: remove plan.QueryProcess and move logic to finalizeIters
    This PR removes the use of plan.QueryProcess and part of the trackProcess rule that adds/removes this node.
    Instead the TrackedRowIter is created directly in finalizeIters.
  • 2710: Changing selectExprNeedsAlias to consider string literal quotes
    When fixing a string literal quoting issue in Doltgres (dolthub/doltgresql#868), table functions stopped working, because the selectExprNeedsAlias started returning true to indicate that an alias was needed (even though it wasn't) and the buildTableFunc function would fail.
    This started happening because the quoted string literals no longer matched InputExpression, since InputExpression always trims off quotes when it is assigned. Another solution could be to expose the trimQuotes function from Vitess and use it to trim expr.String() before matching against InputExpression.
  • 2709: fix LOAD DATA 64K buffer limit
    This PR increase the buffer size for bufio.Scanner to LongTextMax, so hopefully nobody attempts to load a single row larger than 4GB.
    Other changes:
    • moves ignore lines logic to within the loadDataIter
    • drops extra scanner.Text() logic
    • use byte comparison instead of string cast and string comparison
      benchmark: #8467
      fixes: #8469
  • 2708: removing transaction committing node
    doltgres fix: dolthub/doltgresql#872
  • 2702: fix: make SET system type case-insensitive
    Resolves #2701
  • 2697: expose planbuilder methods for domain support in Doltgres

Closed Issues

  • 8469: LOAD DATA LOCAL INFILE fails when row size exceeds 64K (65535 bytes) limit
  • 2701: lowercase sql mode values are not supported
  • 2671: setting two foreign keys to associate with the same field, deleting data is normal but does not take effect

1.43.7

17 Oct 20:23
Compare
Choose a tag to compare

Merged PRs

dolt

  • 8462: dolt gc --full: Implement a flag for GC which will collect everything, including the old gen.
    Dolt GC is generational. By default, it moves all chunks reachable from commits into the old gen, and it leaves uncommitted data in the new gen. By default, it never revisits the chunks in the old gen. This means that if a branch with a lot of unique data exists during a GC, and then gets deleted, the storage taken up by that branch is never reclaimed by future garbage collection.
    This PR implements dolt gc --full, which performs a collection on the entire database, ignoring the generational aspects of previous collections and visiting the entire set of live data. At the end of a successful dolt gc --full, only data which was reachable at the start of the run and data which has been written during the run will be present in the database.
    Note: dolt gc --full visits every reachable chunk in the database and can be resource intensive. As a consequence of running dolt gc --full, any previously archived table files will be unarchived, and storage savings from the archiving will be lost. dolt gc --full involves copying chunks into new storage files, and fully materializing the new files before the old files are deleted; as a consequence, peak disk utilisation while running dolt gc --full can be up to 2x the existing size of the database.
  • 8461: Serialize schema names in foreign key constraints
  • 8459: Fix merge bugs for doltgres

Closed Issues

  • 7873: Running sql-server from an empty state make inconsistent repository

Performance

Read Tests MySQL Dolt Multiple
covering_index_scan 2.11 0.62 0.3
groupby_scan 13.46 16.71 1.2
index_join 1.37 2.3 1.7
index_join_scan 1.27 1.86 1.5
index_scan 34.33 54.83 1.6
oltp_point_select 0.18 0.27 1.5
oltp_read_only 3.49 5.47 1.6
select_random_points 0.34 0.61 1.8
select_random_ranges 0.39 0.62 1.6
table_scan 34.33 55.82 1.6
types_table_scan 74.46 147.61 2.0
reads_mean_multiplier 1.5
Write Tests MySQL Dolt Multiple
oltp_delete_insert 8.13 5.88 0.7
oltp_insert 3.82 2.91 0.8
oltp_read_write 8.58 11.24 1.3
oltp_update_index 3.89 2.97 0.8
oltp_update_non_index 3.89 2.91 0.7
oltp_write_only 5.47 5.88 1.1
types_delete_insert 7.7 6.32 0.8
writes_mean_multiplier 0.9
TPC-C TPS Tests MySQL Dolt Multiple
tpcc-scale-factor-1 98.02 40.45 2.4
tpcc_tps_multiplier 2.4
Overall Mean Multiple 1.60

1.43.6

16 Oct 21:49
Compare
Choose a tag to compare

Merged PRs

dolt

  • 8450: log server metrics heartbeat
    fixes: #8443

go-mysql-server

  • 2704: fix cascade for foreign keys with multiple references
    This PR fixes an issue where foreign keys referencing the same column would fail to update the parent table (only on GMS).
    Turns out we were adding the updater in the chain under the parent table's name instead of the child's name.
    Additionally, has some small refactoring to tidy up the foreign key chain code.
    fixes: dolthub/go-mysql-server#2671
  • 2703: Minor changes for implicit prefix lengths in Doltgres
    Minor changes to support dolthub/doltgresql#829
  • 2700: compare and convert system types properly
    Changes:
    • IsType() methods now account for system variable types,
    • coalesce type comparison accounts for system variable types
    • create table from select ... statements account for system variable types
      Note: MySQL lists @@admin_port as Integer in their docs, but shows up as UInteger in the CLI
      fixes: #8448
  • 2699: resolve column defaults for views
    Properly display defaults for views.
    Also fixes defaults for views with filters.
    fixes: #8447
  • 2696: clear warnings better and separate warning count from actual warnings
    This PR cleans up the logic surrounding warnings and clearing them.
    The important part was separating the number of "new" warnings from the list of warnings themselves.
    Every query should clear out the warnings from the previous query. The exception is show warnings, which only clears the "count" of warnings.
    When a server runs a query that produces a warning, it immediately calls show warnings. Since the show warnings query itself should NOT clear the warnings, the warning count would always be > 0, and incorrectly indicate that show warnings produced a warning. This causes an infinite loop in .NET. Now, we always clear the warning count, and only clear the warnings themselves when the query is not show warnings.
    We've also had this weird problem of having to double clear warnings, which this should address.
    fixes:

vitess

  • 371: support quoted character set values
    This PR adds syntax support for quoted character set values.
    fix: #8455
  • 370: Collapse union types
    Replace union type with one interface type. Static type access in reducer stack become runt-time interface conversions. The compiler builder loses the ability to do type checking at build time, so type safety has to be checked with testing.
    Additional type enforcements are needed for nil-safety. Nil return values have to be typed correctly in the interface variable for casts up the stack to pass. Interface types do not have default nil values, so I've added tryCastXXX helper functions to accommodate untyped nils.

Closed Issues

  • 8455: quoted character set value is not supported
  • 8447: ERROR: 1105 (HY000): handler caught panic: UnresolvedColumnDefault is a placeholder node, but Type() was called
  • 8448: Incorrect type inference for COALESCE of system variables
  • 8443: Log metrics calls to eventsapi.dolthub.com in the Dolt server logs at appropriate log levels
  • 8440: Connector/NET: A warning causes stack overflow
  • 2671: setting two foreign keys to associate with the same field, deleting data is normal but does not take effect

Performance

Read Tests MySQL Dolt Multiple
covering_index_scan 2.11 0.62 0.3
groupby_scan 13.22 16.71 1.3
index_join 1.34 2.3 1.7
index_join_scan 1.25 1.89 1.5
index_scan 34.33 56.84 1.7
oltp_point_select 0.18 0.27 1.5
oltp_read_only 3.49 5.47 1.6
select_random_points 0.34 0.61 1.8
select_random_ranges 0.39 0.62 1.6
table_scan 34.33 56.84 1.7
types_table_scan 74.46 144.97 1.9
reads_mean_multiplier 1.5
Write Tests MySQL Dolt Multiple
oltp_delete_insert 8.13 5.88 0.7
oltp_insert 3.82 2.91 0.8
oltp_read_write 8.58 11.24 1.3
oltp_update_index 3.89 2.97 0.8
oltp_update_non_index 3.89 2.91 0.7
oltp_write_only 5.37 5.99 1.1
types_delete_insert 7.84 6.43 0.8
writes_mean_multiplier 0.9
TPC-C TPS Tests MySQL Dolt Multiple
tpcc-scale-factor-1 98.91 40.71 2.4
tpcc_tps_multiplier 2.4
Overall Mean Multiple 1.60

1.43.5

12 Oct 03:56
Compare
Choose a tag to compare

Merged PRs

dolt

  • 8446: Implemented checking out a table or tables from another commit
    Fixes #8442
    e.g. dolt checkout HEAD~ -- table1 table2

Closed Issues

  • 8442: dolt can restore individual or specified files up to the specified commit record

Performance

Read Tests MySQL Dolt Multiple
covering_index_scan 2.07 0.63 0.3
groupby_scan 13.22 16.71 1.3
index_join 1.37 2.3 1.7
index_join_scan 1.3 1.89 1.5
index_scan 34.33 56.84 1.7
oltp_point_select 0.18 0.27 1.5
oltp_read_only 3.49 5.47 1.6
select_random_points 0.34 0.61 1.8
select_random_ranges 0.39 0.62 1.6
table_scan 34.95 57.87 1.7
types_table_scan 74.46 147.61 2.0
reads_mean_multiplier 1.5
Write Tests MySQL Dolt Multiple
oltp_delete_insert 8.13 5.99 0.7
oltp_insert 3.75 2.91 0.8
oltp_read_write 8.58 11.45 1.3
oltp_update_index 3.89 2.97 0.8
oltp_update_non_index 3.89 2.91 0.7
oltp_write_only 5.28 5.99 1.1
types_delete_insert 7.84 6.43 0.8
writes_mean_multiplier 0.9
TPC-C TPS Tests MySQL Dolt Multiple
tpcc-scale-factor-1 99.29 40.5 2.5
tpcc_tps_multiplier 2.5
Overall Mean Multiple 1.63

1.43.4

11 Oct 23:35
Compare
Choose a tag to compare

Merged PRs

dolt

go-mysql-server

  • 2696: clear warnings better and separate warning count from actual warnings
    This PR cleans up the logic surrounding warnings and clearing them.
    The important part was separating the number of "new" warnings from the list of warnings themselves.
    Every query should clear out the warnings from the previous query. The exception is show warnings, which only clears the "count" of warnings.
    When a server runs a query that produces a warning, it immediately calls show warnings. Since the show warnings query itself should NOT clear the warnings, the warning count would always be > 0, and incorrectly indicate that show warnings produced a warning. This causes an infinite loop in .NET. Now, we always clear the warning count, and only clear the warnings themselves when the query is not show warnings.
    We've also had this weird problem of having to double clear warnings, which this should address.
    fixes:
  • 2695: add view column information to information_schema.columns
    This PR has information_schema reparse create view statements to fill in missing information for the information_schema.columns table. There maybe small differences in column type for more complex views, but should be fine.
    Implementing using view.TextDefinition would be slightly easier/cleaner, but for some reason its sometimes empty? Seems like something to do with fragments on dolt side.
    fixes: #3168
  • 2692: alter underlying enum values to preserve enum strings
    fixes: #7472
  • 2691: Bug fix for DESCRIBE with a schema name
  • 2690: only check references for updated columns
    fixes: #2690
  • 2689: Support for schema name in SHOW TABLE statements
    This provides support for show tables from public and show table from mydb.public in postgres dialects.

Closed Issues

  • 8440: Connector/NET: A warning causes stack overflow
  • 6921: warnings are not clearing from running the same queries multiple times
  • 2690: When updating rows, Dolt requires all values in the row to satisfy constraints, not just the values changed
  • 3168: information_schema.columns does not contain all associated view information
  • 7472: Dolt doesn't update enum/set values when the type is changed