Merged PRs
dolt
- 6870: Revert "Change parent order processing in commit iterator …"
Reverting this commit after receiving customer testing feedback that there are still cases where we aren't finding the most specific commit and that query latency for somedolt_diff_<tablename>
queries has increased.
This reverts commit 2e5e6aa - 6866: Store source database info in tables and columns.
This allows the engine to differentiate between tables with the same name from different databases, in line with MySQL. This also moves us toward a less error-prone model for resolving table references in queries, where we generate IDs for tables and columns during plan building and use those instead of doing lots of string comparisons.
The main reason for supporting this is that it allows writing queries like:
SELECT * from `db/main`.table join `db/dev`.table using (pk)
without having to put each branch in its own subquery.
This is the dolt side of dolthub/go-mysql-server#2090
go-mysql-server
- 2091: Non-ambiguous ORDER BY col should not error
- 2090: Allow queries with duplicate table names if those tables come from different databases and all references are unambiguously resolvable.
Closed Issues
- 5305: Argument order is very important to the dolt CLI
- 6861: Merging main into another branch breaks
dolt_diff_<table>
Latency
Read Tests | MySQL | Dolt | Multiple |
---|---|---|---|
covering_index_scan | 2.11 | 2.76 | 1.3 |
groupby_scan | 13.95 | 17.01 | 1.2 |
index_join | 1.32 | 4.49 | 3.4 |
index_join_scan | 1.25 | 2.14 | 1.7 |
index_scan | 34.33 | 55.82 | 1.6 |
oltp_point_select | 0.17 | 0.41 | 2.4 |
oltp_read_only | 3.3 | 7.3 | 2.2 |
select_random_points | 0.32 | 0.68 | 2.1 |
select_random_ranges | 0.39 | 0.92 | 2.4 |
table_scan | 34.33 | 55.82 | 1.6 |
types_table_scan | 74.46 | 158.63 | 2.1 |
reads_mean_multiplier | 2.0 |
Write Tests | MySQL | Dolt | Multiple |
---|---|---|---|
bulk_insert | 0.001 | 0.001 | 1.0 |
oltp_delete_insert | 5.09 | 5.67 | 1.1 |
oltp_insert | 2.39 | 2.91 | 1.2 |
oltp_read_write | 7.04 | 13.95 | 2.0 |
oltp_update_index | 2.86 | 2.81 | 1.0 |
oltp_update_non_index | 2.81 | 2.76 | 1.0 |
oltp_write_only | 3.75 | 6.91 | 1.8 |
types_delete_insert | 4.91 | 6.09 | 1.2 |
writes_mean_multiplier | 1.3 |
Overall Mean Multiple | 1.7 |
---|