Bug #41156 | List of derived tables acts like a chain of mutually-nested subqueries | ||
---|---|---|---|
Submitted: | 1 Dec 2008 18:44 | Modified: | 4 Aug 2009 23:49 |
Reporter: | Gleb Shchepa | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: DML | Severity: | S3 (Non-critical) |
Version: | 5.0.72, 5.1.30, 6.0.7 | OS: | Any |
Assigned to: | Gleb Shchepa | CPU Architecture: | Any |
Tags: | derived table, regression, subquery |
[1 Dec 2008 18:44]
Gleb Shchepa
[1 Dec 2008 19:42]
Valeriy Kravchuk
Thank you for a bug report. Verified just as described with 5.0.72, 5.1.30 and 6.0.7.
[30 Mar 2009 13:47]
Jason Rider
We have just recently updated to 5.0.79 to get around another bug in 5.0.44 and I believe we have hit this issue with a number of queries that are used for reports. The queries do use sub-queries, but at most there are 3 nested queries, then the sets of queries are joined so I don't think they are nested too deep. On 5.0.44 they return the correct results. Please let me know if you would like some example queries. As this bug is going to effect our ability to update it is deemed critical for us as the bug in 5.0.44 is causing crashing. This puts us between a rock and a hard place. Is there any chance this is going to get fixed soon? And preferably in the 5.0 branch? Cheers, Jason
[9 Apr 2009 20:35]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/71830 2727 Gleb Shchepa 2009-04-10 Bug #41156: List of derived tables acts like a chain of mutually-nested subqueries Queries of the form SELECT * FROM (SELECT 1) AS t1, (SELECT 2) AS t2,... (SELECT 32) AS t32 caused the "Too high level of nesting for select" error as if the query has a form SELECT * FROM (SELECT 1 FROM (SELECT 2 FROM (SELECT 3 FROM... The table_factor parser rule has been modified to adjust the LEX::nest_level variable value after every derived table. modified: mysql-test/r/derived.result mysql-test/t/derived.test sql/sql_yacc.yy
[13 May 2009 23:00]
Jason Rider
Hi. Is there any update as to what release this bug maybe fixed in? Having to work around this limitation is really hitting our reports. Cheers, Jason
[3 Jul 2009 15:37]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/77922 2793 Gleb Shchepa 2009-07-03 Bug #41156: List of derived tables acts like a chain of mutually-nested subqueries The select_derived2 parser rule calls mysql_new_select() calls push_context() and nest_level++, however only the pop_context() was called at the end of derived table parsing at the table_factor rule. The table_factor parser rule has been modified to adjust the LEX::nest_level variable value after every derived table. @ mysql-test/r/derived.result Added test case for bug #41156. @ mysql-test/t/derived.test Added test case for bug #41156. @ sql/sql_yacc.yy Bug #41156: List of derived tables acts like a chain of mutually-nested subqueries The table_factor parser rule has been modified to adjust the LEX::nest_level variable value after every derived table.
[11 Jul 2009 20:19]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/78452 3017 Gleb Shchepa 2009-07-11 Bug #41156: List of derived tables acts like a chain of mutually-nested subqueries Queries of the form SELECT * FROM (SELECT 1) AS t1, (SELECT 2) AS t2,... (SELECT 32) AS t32 caused the "Too high level of nesting for select" error as if the query has a form SELECT * FROM (SELECT 1 FROM (SELECT 2 FROM (SELECT 3 FROM... The table_factor parser rule has been modified to adjust the LEX::nest_level variable value after every derived table. @ mysql-test/r/derived.result Added test case for bug #41156. @ mysql-test/t/derived.test Added test case for bug #41156. @ sql/sql_yacc.yy Bug #41156: List of derived tables acts like a chain of mutually-nested subqueries The select_derived2 parser rule calls mysql_new_select() calls push_context() and nest_level++, however only the pop_context() was called at the end of derived table parsing at the table_factor rule. The table_factor parser rule has been modified to adjust the LEX::nest_level variable value after every derived table.
[13 Jul 2009 17:49]
Bugs System
Pushed into 5.1.37 (revid:joro@sun.com-20090713174543-cd2x7q1gi1hzoand) (version source revid:gshchepa@mysql.com-20090711184429-lsksu70kgft05r8j) (merge vers: 5.1.37) (pib:11)
[13 Jul 2009 19:26]
Paul DuBois
Noted in 5.1.37 changelog. For queries with a sufficient number of subqueries in the FROM clause of this form: SELECT * FROM (SELECT 1) AS t1, (SELECT 2) AS t2, (SELECT 3) AS t3, ... The query failed with a "Too high level of nesting for select" error, as those the query had this form: SELECT * FROM (SELECT 1 FROM (SELECT 2 FROM (SELECT 3 FROM ... Setting report to NDI pending push into 5.4.x.
[4 Aug 2009 19:50]
Bugs System
Pushed into 5.4.4-alpha (revid:alik@sun.com-20090804194615-h40sa098mx4z49qg) (version source revid:gshchepa@mysql.com-20090711184641-xs77ljlj5xlo5nns) (merge vers: 5.4.4-alpha) (pib:11)
[4 Aug 2009 23:49]
Paul DuBois
Noted in 5.4.4 changelog.
[12 Aug 2009 22:45]
Paul DuBois
Noted in 5.4.2 changelog because next 5.4 version will be 5.4.2 and not 5.4.4.
[15 Aug 2009 2:03]
Paul DuBois
Ignore previous comment about 5.4.2.
[26 Aug 2009 13:46]
Bugs System
Pushed into 5.1.37-ndb-7.0.8 (revid:jonas@mysql.com-20090826132541-yablppc59e3yb54l) (version source revid:jonas@mysql.com-20090826132541-yablppc59e3yb54l) (merge vers: 5.1.37-ndb-7.0.8) (pib:11)
[26 Aug 2009 13:46]
Bugs System
Pushed into 5.1.37-ndb-6.3.27 (revid:jonas@mysql.com-20090826105955-bkj027t47gfbamnc) (version source revid:jonas@mysql.com-20090826105955-bkj027t47gfbamnc) (merge vers: 5.1.37-ndb-6.3.27) (pib:11)
[26 Aug 2009 13:48]
Bugs System
Pushed into 5.1.37-ndb-6.2.19 (revid:jonas@mysql.com-20090825194404-37rtosk049t9koc4) (version source revid:jonas@mysql.com-20090825194404-37rtosk049t9koc4) (merge vers: 5.1.37-ndb-6.2.19) (pib:11)
[27 Aug 2009 16:32]
Bugs System
Pushed into 5.1.35-ndb-7.1.0 (revid:magnus.blaudd@sun.com-20090827163030-6o3kk6r2oua159hr) (version source revid:jonas@mysql.com-20090826132541-yablppc59e3yb54l) (merge vers: 5.1.37-ndb-7.0.8) (pib:11)
[8 Oct 2009 19:39]
Paul DuBois
The 5.4 fix has been pushed to 5.4.2.