From 6c7fed9b4f180f485b85c46ca0d3ff6cfeba95b1 Mon Sep 17 00:00:00 2001 From: Harshit Gangal Date: Fri, 21 Jun 2024 21:31:56 +0530 Subject: [PATCH] release notes: update dml related release notes (#16241) Signed-off-by: Harshit Gangal --- changelog/20.0/20.0.0/summary.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/changelog/20.0/20.0.0/summary.md b/changelog/20.0/20.0.0/summary.md index 6e09cc982ef..c507efae7b1 100644 --- a/changelog/20.0/20.0.0/summary.md +++ b/changelog/20.0/20.0.0/summary.md @@ -237,7 +237,8 @@ Support is added for sharded update with limit. Example: `update t1 set t1.foo = 'abc', t1.bar = 23 where t1.baz > 5 limit 1` -More details about how it works is available in [MySQL Docs](https://dev.mysql.com/doc/refman/8.0/en/update.html) +The support is built on performing a selection of primary keys and then performing an update with those primary keys. +For query syntax, refer to the [MySQL Docs](https://dev.mysql.com/doc/refman/8.0/en/update.html) #### Update with Multi Table Support @@ -245,7 +246,8 @@ Support is added for sharded multi-table update with column update on single tar Example: `update t1 join t2 on t1.id = t2.id join t3 on t1.col = t3.col set t1.baz = 'abc', t1.apa = 23 where t3.foo = 5 and t2.bar = 7` -More details about how it works is available in [MySQL Docs](https://dev.mysql.com/doc/refman/8.0/en/update.html) +The support is built on performing a selection of primary keys and then performing an update with those primary keys. +For query syntax, refer to the [MySQL Docs](https://dev.mysql.com/doc/refman/8.0/en/update.html) #### Update with Multi Target Support @@ -253,7 +255,9 @@ Support is added for sharded multi table target update. Example: `update t1 join t2 on t1.id = t2.id set t1.foo = 'abc', t2.bar = 23` -More details about how it works is available in [MySQL Docs](https://dev.mysql.com/doc/refman/8.0/en/update.html) +The support is built on performing a selection of primary keys from all target tables and +then performing an update for each table with their selected primary keys. +For query syntax, refer to the [MySQL Docs](https://dev.mysql.com/doc/refman/8.0/en/update.html) #### Delete with Subquery Support @@ -261,13 +265,17 @@ Support is added for sharded table delete with subquery Example: `delete from t1 where id in (select col from t2 where foo = 32 and bar = 43)` +The support is built by performing the uncorrelated subquery first and then providing the value for deletion. + #### Delete with Multi Target Support Support is added for sharded multi table target delete. Example: `delete t1, t3 from t1 join t2 on t1.id = t2.id join t3 on t1.col = t3.col` -More details about how it works is available in [MySQL Docs](https://dev.mysql.com/doc/refman/8.0/en/delete.html) +The support is built on performing a selection of primary keys from all target tables and +then performing a delete operation for each table with their selected primary keys. +For query syntax, refer to the [MySQL Docs](https://dev.mysql.com/doc/refman/8.0/en/delete.html) #### User Defined Functions Support @@ -288,7 +296,7 @@ Example: - `insert into user(id, name, email) valies (100, 'Alice', 'alice@mail.com') as new on duplicate key update name = new.name, email = new.email` - `insert into user(id, name, email) valies (100, 'Alice', 'alice@mail.com') as new(m, n, p) on duplicate key update name = n, email = p` -More details about how it works is available in [MySQL Docs](https://dev.mysql.com/doc/refman/8.0/en/insert-on-duplicate.html) +For query syntax, refer to the [MySQL Docs](https://dev.mysql.com/doc/refman/8.0/en/insert-on-duplicate.html) ### Query Timeout On a query timeout, Vitess closed the connection using the `kill connection` statement. This leads to connection churn