Bug #12861 crash with group_concat insubquery FROM DUAL
Submitted: 29 Aug 2005 19:04 Modified: 1 Sep 2005 1:45
Reporter: Martin Friebe (Gold Quality Contributor) (OCA) Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Optimizer Severity:S3 (Non-critical)
Version:4.1.14/BK 4.1 OS:* / freebsd/Linux
Assigned to: Evgeny Potemkin CPU Architecture:Any

[29 Aug 2005 19:04] Martin Friebe
Description:
this mght be related to bug #12859

see how to repeat, the query never returns, the processlist shows an idle mysql, but the client keeps waiting.

How to repeat:
select * from (select group_concat('c') from DUAL) t;

Suggested fix:
-
[29 Aug 2005 19:37] MySQL Verification Team
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 4.1.15-debug-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> select * from (select group_concat('c') from DUAL) t;
Aborted
[31 Aug 2005 14:25] 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/internals/29104
[31 Aug 2005 19:29] Evgeny Potemkin
Item_func_group_concat::fix_fields() set maybe_null flag to 0, and set it to
1 only if some of it's arguments may be null. When used in subquery in tmp 
table created field which can't be null. When no data retireved result field
have to be set to null and error mentioned in bug report occurs. Also this 
bug can occur if selecting from not null field in empty table.

Fixed in 4.1.15, cset 1.2398.2.1
[1 Sep 2005 1:45] Paul DuBois
Noted in 4.1.15 changelog.