Merged PRs
dolt
- 9811: fix context cancel in
dolt_test_run()
when runningdolt sql-server
fixes: #9787 - 9790: #9794 - Add --skinny support for DOLT_DIFF table func
Fixes #9086
Add support for--skinny
and--include-cols
flags using theDOLT_DIFF()
table function to provide more focused diff output by showing only primary key columns and columns that actually changed, while allowing explicit inclusion of additional columns.
Thedolt diff
command has also been updated to support the new--include-cols
flag.
Without --skinny (current behavior)SELECT * FROM DOLT_DIFF('HEAD~1', 'HEAD', 'test');
With --skinny flag+-------+-------+-------+-------+-------+-------+-------+-----------+-------------------------+---------+---------+---------+---------+---------+---------+-------------+-------------------------+-----------+ | to_pk | to_c1 | to_c2 | to_c3 | to_c4 | to_c5 | to_c6 | to_commit | to_commit_date | from_pk | from_c1 | from_c2 | from_c3 | from_c4 | from_c5 | from_commit | from_commit_date | diff_type | +-------+-------+-------+-------+-------+-------+-------+-----------+-------------------------+---------+---------+---------+---------+---------+---------+-------------+-------------------------+-----------+ | 0 | 100 | 2 | 300 | 4 | 5 | 600 | HEAD | 2025-09-08 22:55:11.341 | 0 | 100 | 2 | 300 | 4 | 5 | HEAD~1 | 2025-09-08 22:55:07.383 | modified | +-------+-------+-------+-------+-------+-------+-------+-----------+-------------------------+---------+---------+---------+---------+---------+---------+-------------+-------------------------+-----------+
SELECT * FROM DOLT_DIFF('--skinny', 'HEAD~1', 'HEAD', 'test');
With --skinny and --include-cols+-------+-------+-----------+-------------------------+---------+-------------+-------------------------+-----------+ | to_pk | to_c6 | to_commit | to_commit_date | from_pk | from_commit | from_commit_date | diff_type | +-------+-------+-----------+-------------------------+---------+-------------+-------------------------+-----------+ | 0 | 600 | HEAD | 2025-09-08 22:55:11.341 | 0 | HEAD~1 | 2025-09-08 22:55:07.383 | modified | +-------+-------+-----------+-------------------------+---------+-------------+-------------------------+-----------+
Explicitly include additional columns even if they didn’t change, useful for context.SELECT * FROM DOLT_DIFF('--skinny', '--include-cols=c1,c2', 'HEAD~1', 'HEAD', 'test');
Notes:+-------+-------+-------+-------+-----------+-------------------------+---------+---------+---------+-------------+-------------------------+-----------+ | to_pk | to_c1 | to_c2 | to_c6 | to_commit | to_commit_date | from_pk | from_c1 | from_c2 | from_commit | from_commit_date | diff_type | +-------+-------+-------+-------+-----------+-------------------------+---------+---------+---------+-------------+-------------------------+-----------+ | 0 | 100 | 2 | 600 | HEAD | 2025-09-08 22:55:11.341 | 0 | 100 | 2 | HEAD~1 | 2025-09-08 22:55:07.383 | modified | +-------+-------+-------+-------+-----------+-------------------------+---------+---------+---------+-------------+-------------------------+-----------+
--include-cols
accepts a comma-separated list of column names, or can be placed at the end with space separated arguments (e.g.,DOLT_DIFF('--skinny', 'HEAD~1', 'HEAD', 'test', '--include-cols', 'c1', 'c2');)
.- Primary key columns are always included with
--skinny
.
go-mysql-server
- 3201: #9807 - FULL OUTER JOIN with empty left subquery rets unmatched right rows
Fixes #9807
FixedfullJoinIter.Next()
to use parentRow instead of nil leftRow when building right iter for second phase. - 3197: #9794 - Fix string function panics with Dolt TextStorage
Fixes #9794 - 3190: Refactorings to support index scans for pg catalog tables
This PR adds new interfaces to allow different expressions types to participate in the standard index costing process, which results in a RangeCollection. Also plumbs additional type info through so that types with a more precise conversion process can participate as well.