Bug #119808 Error 3569 with HIGH_PRIORITY + VIEW + GROUP BY + FOR UPDATE
| Submitted: | 29 Jan 14:44 | Modified: | 8 Jul 12:18 |
|---|---|---|---|
| Reporter: | Chunling Qin | Email Updates: | |
| Status: | Verified | Impact on me: | |
| Category: | MySQL Server: DML | Severity: | S2 (Serious) |
| Version: | OS: | Any | |
| Assigned to: | CPU Architecture: | Any |
[20 Apr 11:52]
Chunling Qin
Hit the issue again.Please help to confirm, thanks.
[8 Jul 12:18]
Chaithra Marsur Gopala Reddy
Hi Chunling Qin, Thank you for the test case. Verified as described.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.049 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.
Description: ## Synopsis Error 3569 "Table appears in multiple locking clauses" when using HIGH_PRIORITY SELECT with GROUP BY and FOR UPDATE on a view containing an internal alias ## Description When executing a SELECT query with HIGH_PRIORITY, GROUP BY, and FOR UPDATE on a view that uses an alias in its definition, MySQL incorrectly reports error 3569, claiming the table "appears in multiple locking clauses" even though only one FOR UPDATE clause exists. FOR UPDATE; ``` **Error output:** ``` ERROR 3569 (HY000): Table t11 appears in multiple locking clauses. ``` mysql> SELECT VERSION(); +--------------+ | VERSION() | +--------------+ | 8.0.45-debug | +--------------+ How to repeat: ```sql DROP DATABASE IF EXISTS test_bug_3569; CREATE DATABASE test_bug_3569; USE test_bug_3569; CREATE TABLE tmp_parent ( col_int INT, col_varchar VARCHAR(2000), col_date DATE, col_timestamp TIMESTAMP, col_numeric NUMERIC ) ENGINE=InnoDB; INSERT INTO tmp_parent VALUES (10, 'test1', '2026-01-01', NOW(), 100), (20, 'test2', '2026-01-02', NOW(), 200), (30, 'test3', '2026-01-03', NOW(), 300); CREATE VIEW view2chqin AS SELECT t1.* FROM tmp_parent t1 WHERE t1.col_int > 0; -- This query triggers ERROR 3569 SELECT HIGH_PRIORITY * FROM view2chqin t11 GROUP BY 1,2,3,4,5 ORDER BY 1 LIMIT 1 FOR UPDATE; ```