Bug #30715 | Assertion failed: item_field->field->real_maybe_null(), file .\opt_sum.cc, line | ||
---|---|---|---|
Submitted: | 30 Aug 2007 5:37 | Modified: | 19 Nov 2007 4:53 |
Reporter: | Ken Chen | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: General | Severity: | S3 (Non-critical) |
Version: | 5.0.45-debug, 5.0, 5.1.23-debug, 5.2 BK | OS: | Any |
Assigned to: | Georgi Kodinov | CPU Architecture: | Any |
Tags: | assertion, crash, innodb, myisam |
[30 Aug 2007 5:37]
Ken Chen
[30 Aug 2007 5:39]
Ken Chen
The stack trace result: [root@db1 /tmp]# resolve_stack_dump -s /tmp/mysqld.sym -n mysql.stack 0x81835d3 handle_segfault + 563 0x47f402 (?) 0x4f70a451 _end + 1192000145 0x4f70224b _end + 1191966859 0x824dcc2 _Z13opt_sum_queryP13st_table_listR4ListI4ItemEPS2_ + 1184 0x81e8b67 _ZN4JOIN8optimizeEv + 1305 0x81f5487 _Z12mysql_selectP3THDPPP4ItemP13st_table_listjR4ListIS1_ES2_jP8st_orderSB_S2_SB_yP13select_resultP18st_select_lex_unitP13st_sel + 1493 0x81f5aa3 _Z13handle_selectP3THDP6st_lexP13select_resultm + 467 0x81a097e _Z21mysql_execute_commandP3THD + 25676 0x81a18d2 _Z11mysql_parseP3THDPKcjPS2_ + 344 0x81a24be _Z16dispatch_command19enum_server_commandP3THDPcj + 2660 0x81a378f _Z10do_commandP3THD + 537 0x81a4419 handle_one_connection + 2977 0x4f8532db _end + 1193347355 0x4f7ad14e _end + 1192667022
[30 Aug 2007 5:47]
Ken Chen
[root@db1 mysql]# free total used free shared buffers cached Mem: 4025380 3897648 127732 0 54632 2806004 -/+ buffers/cache: 1037012 2988368 Swap: 2031608 52 2031556 [root@db1 mysql]# uname -a Linux db1.xxxx.com 2.6.18-8.el5 #1 SMP Fri Jan 26 14:15:21 EST 2007 i686 i686 i386 GNU/Linux 8404 pts/0 S 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --port=3307 --bind-address=192.168.4.233 --socket=/tmp/mysql2.sock --character-set-server=utf8 --init_connect=SET NAMES utf8 --datadir=/usr/local/mysql/data2 --max_connections=160 --interactive_timeout=15 --nice=-18 --thread_concurrency=8 --open-files-limit=8192 --core-file --log --skip-locking --key_buffer=256M --max_allowed_packet=1M --table_cache=300 --sort_buffer_size=1M --read_buffer_size=1M --read_rnd_buffer_size=1M --myisam_sort_buffer_size=32M --thread_cache_size=32 --query_cache_size=32M --tmp_table_size=16M --relay-log=db2-relay-bin --server-id=23301 --log-bin=mysql-bin --skip-bdb --innodb_data_home_dir=/usr/local/mysql/data2/ --innodb_data_file_path=ibdata1:2G:autoextend:max:8G --innodb_buffer_pool_size=512M --innodb_additional_mem_pool_size=4M --innodb_log_file_size=128M --innodb_log_buffer_size=8M --innodb_flush_log_at_trx_commit=1 --innodb_lock_wait_timeout=30 --innodb_file_per_table --replicate-ignore-table=friend.SendVKiss --replicate-wild-ignore-table=friend.fc_% --replicate-wild-ignore-table=friend._search_result_% 8785 pts/0 S<l 10:21 /usr/local/mysql/libexec/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data2 --user=mysql --pid-file=/usr/local/mysql/data2/db1.topfong.com.pid --skip-external-locking --open-files-limit=8192 --port=3307 --socket=/tmp/mysql2.sock --bind-address=192.168.4.233 --character-set-server=utf8 --init_connect=SET NAMES utf8 --max_connections=160 --interactive_timeout=15 --thread_concurrency=8 --core-file --log --skip-locking --key_buffer=256M --max_allowed_packet=1M --table_cache=300 --sort_buffer_size=1M --read_buffer_size=1M --read_rnd_buffer_size=1M --myisam_sort_buffer_size=32M --thread_cache_size=32 --query_cache_size=32M --tmp_table_size=16M --relay-log=db2-relay-bin --server-id=23301 --log-bin=mysql-bin --skip-bdb --innodb_data_home_dir=/usr/local/mysql/data2/ --innodb_data_file_path=ibdata1:2G:autoextend:max:8G --innodb_buffer_pool_size=512M --innodb_additional_mem_pool_size=4M --innodb_log_file_size=128M --innodb_log_buffer_size=8M --innodb_flush_log_at_trx_commit=1 --innodb_lock_wait_timeout=30 --innodb_file_per_table --replicate-ignore-table=friend.SendVKiss --replicate-wild-ignore-table=friend.fc_% --replicate-wild-ignore-table=friend._search_result_% [root@db1 mysql]#
[30 Aug 2007 5:49]
Valeriy Kravchuk
Thank you for a problem report. Please, send the results of SHOW CREATE TABLE and SHOW TABLE STATUS for your daily table used in the query. Send the results of: EXPLAIN SELECT MIN(date) FROM daily WHERE memberID='8014' AND date>'2007-08-01'\G also.
[30 Aug 2007 5:51]
Ken Chen
I don't find the core file, where is it or what I miss? Before I finish the bug report, it crashed again. [root@db1 tmp]# resolve_stack_dump -s /tmp/mysqld.sym -n qq 0x81835d3 handle_segfault + 563 0xbc3402 (?) 0x4f70a451 _end + 1192000145 0x4f70224b _end + 1191966859 0x824dcc2 _Z13opt_sum_queryP13st_table_listR4ListI4ItemEPS2_ + 1184 0x81e8b67 _ZN4JOIN8optimizeEv + 1305 0x81f5487 _Z12mysql_selectP3THDPPP4ItemP13st_table_listjR4ListIS1_ES2_jP8st_orderSB_S2_SB_yP13select_resultP18st_select_lex_unitP13st_sel + 1493 0x81f5aa3 _Z13handle_selectP3THDP6st_lexP13select_resultm + 467 0x81a097e _Z21mysql_execute_commandP3THD + 25676 0x81a18d2 _Z11mysql_parseP3THDPKcjPS2_ + 344 0x81a24be _Z16dispatch_command19enum_server_commandP3THDPcj + 2660 0x81a378f _Z10do_commandP3THD + 537 0x81a4419 handle_one_connection + 2977 0x4f8532db _end + 1193347355 0x4f7ad14e _end + 1192667022
[30 Aug 2007 6:03]
Ken Chen
mysql> SHOW CREATE TABLE daily\G *************************** 1. row *************************** Table: daily Create Table: CREATE TABLE `daily` ( `uid` bigint(10) unsigned NOT NULL auto_increment, `memberID` bigint(10) unsigned NOT NULL default '0', `date` date NOT NULL default '0000-00-00', `created` datetime NOT NULL, `mood` smallint(6) NOT NULL default '0', `text` text NOT NULL, `private` set('no','hot','me','adult') NOT NULL default 'no', `good` int(10) unsigned NOT NULL default '0', `view` int(10) unsigned NOT NULL default '0', `checkcode` varchar(32) NOT NULL default '', `Notify` enum('y','n') NOT NULL default 'n', `modified` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `attrib` enum('user','gold','free') NOT NULL default 'user', PRIMARY KEY (`uid`), UNIQUE KEY `memberID_2` (`memberID`,`date`), KEY `date` (`date`,`private`,`uid`), KEY `diaryLast` (`memberID`,`created`) ) ENGINE=InnoDB AUTO_INCREMENT=1695840 DEFAULT CHARSET=utf8 1 row in set (0.00 sec) mysql> SHOW TABLE STATUS LIKE "daily"\G *************************** 1. row *************************** Name: daily Engine: InnoDB Version: 10 Row_format: Compact Rows: 1429273 Avg_row_length: 802 Data_length: 1147142144 Max_data_length: 0 Index_length: 185516032 Data_free: 0 Auto_increment: 1695840 Create_time: 2007-08-28 09:50:52 Update_time: NULL Check_time: NULL Collation: utf8_general_ci Checksum: NULL Create_options: Comment: InnoDB free: 6144 kB 1 row in set (0.15 sec) I tried many times, the 'EXPLAIN SELECT MIN(date) FROM daily WHERE memberID='8014' AND date>'2007-08-01'\G' will make mysql crashing! I will send the information later.
[30 Aug 2007 6:09]
Ken Chen
When I use 'EXPLAIN SELECT MIN(date) FROM daily WHERE memberID='8014' AND date>'2007-08-01'\G', the mysqld crash. [root@db1 /tmp]# resolve_stack_dump -s /tmp/mysqld.sym -n explain1 0x81835d3 handle_segfault + 563 0x4a7402 (?) 0x4f70a451 _end + 1192000145 0x4f70224b _end + 1191966859 0x824dcc2 _Z13opt_sum_queryP13st_table_listR4ListI4ItemEPS2_ + 1184 0x81e8b67 _ZN4JOIN8optimizeEv + 1305 0x81f5487 _Z12mysql_selectP3THDPPP4ItemP13st_table_listjR4ListIS1_ES2_jP8st_orderSB_S2_SB_yP13select_resultP18st_select_lex_unitP13st_sel + 1493 0x81f588f _Z19mysql_explain_unionP3THDP18st_select_lex_unitP13select_result + 533 0x819aa35 _Z21mysql_execute_commandP3THD + 1283 0x81a18d2 _Z11mysql_parseP3THDPKcjPS2_ + 344 0x81a24be _Z16dispatch_command19enum_server_commandP3THDPcj + 2660 0x81a378f _Z10do_commandP3THD + 537 0x81a4419 handle_one_connection + 2977 0x4f8532db _end + 1193347355 0x4f7ad14e _end + 1192667022 The log file: 070830 14:05:53 [Note] /usr/local/mysql/libexec/mysqld: ready for connections. Version: '5.0.45-debug-log' socket: '/tmp/mysql2.sock' port: 3307 Source distribution mysqld: opt_sum.cc:263: int opt_sum_query(TABLE_LIST*, List<Item>&, COND*): Assertion `item_field->field->real_maybe_null()' failed 070830 14:05:59 - mysqld got signal 6; This could be because you hit a bug. It is also possible that this binary or one of the libraries it was linked against is corrupt, improperly built, or misconfigured. This error can also be caused by malfunctioning hardware. We will try our best to scrape up some info that will hopefully help diagnose the problem, but since we have already crashed, something is definitely wrong and this may fail. key_buffer_size=268435456 read_buffer_size=1044480 max_used_connections=5 max_connections=160 threads_connected=5 It is possible that mysqld could use up to key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections = 589182 K bytes of memory Hope that's ok; if not, decrease some variables in the equation. thd=0xae487b0 Attempting backtrace. You can use the following information to find out where mysqld died. If you see no messages after this, something went terribly wrong... Cannot determine thread, fp=0x7dcc50a8, backtrace may not be correct. Stack range sanity check OK, backtrace follows: 0x81835d3 0x4a7402 0x4f70a451 0x4f70224b 0x824dcc2 0x81e8b67 0x81f5487 0x81f588f 0x819aa35 0x81a18d2 0x81a24be 0x81a378f 0x81a4419 0x4f8532db 0x4f7ad14e New value of fp=(nil) failed sanity check, terminating stack trace! Please read http://dev.mysql.com/doc/mysql/en/using-stack-trace.html and follow instructions on how to resolve the stack trace. Res stack trace is much more helpful in diagnosing the problem, so please do resolve it Trying to get some variables. Some pointers may be invalid and cause the dump to abort... thd->query at 0xae5f2d8 = EXPLAIN SELECT MIN(date) FROM daily WHERE memberID='8014' AND date>'2007-08-01' thd->thread_id=2 The manual page at http://www.mysql.com/doc/en/Crashing.html contains information that should help you find out what is causing the crash. Writing a core file Number of processes running now: 0
[30 Aug 2007 6:12]
Ken Chen
The statement is executed on the slave server. It's mysql 5.0.45 binary distribution, and is on a FreeBSD 6.2 box. mysql> EXPLAIN SELECT MIN(date) FROM daily WHERE memberID='8014' AND -> date>'2007-08-01'\G *************************** 1. row *************************** id: 1 select_type: SIMPLE table: NULL type: NULL possible_keys: NULL key: NULL key_len: NULL ref: NULL rows: NULL Extra: Select tables optimized away 1 row in set (0.01 sec) mysql>
[30 Aug 2007 6:14]
Ken Chen
Now, I switch back to the binary distribution on the linux box. It can run 'EXPLAIN ...'. 070830 14:13:07 mysqld started 070830 14:13:08 InnoDB: Started; log sequence number 12 2609549234 070830 14:13:08 [Note] /usr/local/mysql/bin/mysqld: ready for connections. Version: '5.0.45-log' socket: '/tmp/mysql2.sock' port: 3307 MySQL Community Server (GPL) mysql> EXPLAIN SELECT MIN(date) FROM daily WHERE memberID='8014' AND date>'2007-08-01'\G *************************** 1. row *************************** id: 1 select_type: SIMPLE table: NULL type: NULL possible_keys: NULL key: NULL key_len: NULL ref: NULL rows: NULL Extra: Select tables optimized away 1 row in set (0.02 sec)
[30 Aug 2007 8:45]
Sveta Smirnova
test case
Attachment: bug30715.test (application/octet-stream, text), 927 bytes.
[30 Aug 2007 8:46]
Sveta Smirnova
Thank you for the feedback. Verified as described on Linux using attached test case.
[30 Aug 2007 9:21]
Ken Chen
I find the only different is the last line when creating table `daily`. ) DEFAULT CHARSET=utf8; It will create the table in myisam storage. Is it right?
[30 Aug 2007 9:57]
Sveta Smirnova
Yes, it doesn't matter which storage engine is used: crash occurs if using both InnoDB and MyISAM storage engine.
[30 Aug 2007 22:55]
Ken Chen
mysql> ALTER TABLE daily RENAME ddddd; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 4 Current database: friend Query OK, 0 rows affected (1.14 sec) mysql> CREATE TABLE `daily` ( `uid` bigint(10) unsigned NOT NULL auto_increment, `memberID` bigint(10) unsigned NOT NULL default '0', `date` date NOT NULL default '0000-00-00', `created` datetime NOT NULL, `mood` smallint(6) NOT NULL default '0', `text` text NOT NULL, `private` set('no','hot','me','adult') NOT NULL default 'no', `good` int(10) unsigned NOT NULL default '0', `view` int(10) unsigned NOT NULL default '0', `checkcode` varchar(32) NOT NULL default '', `Notify` enum('y','n') NOT NULL default 'n', `modified` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `attrib` enum('user','gold','free') NOT NULL default 'user', PRIMARY KEY (`uid`), UNIQUE KEY `memberID_2` (`memberID`,`date`), KEY `date` (`date`,`private`,`uid`), KEY `diaryLast` (`memberID`,`created`)) DEFAULT CHARSET=utf8; Query OK, 0 rows affected (0.05 sec) mysql> EXPLAIN SELECT MIN(date) FROM daily WHERE memberID='8014' AND date>'2007-08-01'; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 8 Current database: friend ERROR 2013 (HY000): Lost connection to MySQL server during query (It crashed.) mysql> SELECT MIN(date) FROM daily WHERE memberID='8014' AND date>'2007-08-01'; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 2 Current database: friend ERROR 2013 (HY000): Lost connection to MySQL server during query (It crashed.) mysql> EXPLAIN SELECT MIN(date) FROM daily WHERE memberID='8014'\G *************************** 1. row *************************** id: 1 select_type: SIMPLE table: NULL type: NULL possible_keys: NULL key: NULL key_len: NULL ref: NULL rows: NULL Extra: No matching min/max row 1 row in set (0.00 sec) (It run well.) Try to explain other table .. mysql> explain select * from board WHERE date>='2007-08-01' AND memberID='8014'\G *************************** 1. row *************************** id: 1 select_type: SIMPLE table: board type: range possible_keys: memberID_2 key: memberID_2 key_len: 16 ref: NULL rows: 1 Extra: Using where 1 row in set (0.00 sec) (It run well.)
[30 Aug 2007 23:03]
Ken Chen
I am keep trying.. mysql> drop table daily; Query OK, 0 rows affected (0.00 sec) mysql> CREATE TABLE `daily` ( `uid` bigint(10) unsigned NOT NULL auto_increment, `memberID` bigint(10) unsigned NOT NULL default '0', `date` date NOT NULL default '0000-00-00', `created` datetime NOT NULL, `mood` smallint(6) NOT NULL default '0', `text` text NOT NULL, `private` set('no','hot','me','adult') NOT NULL default 'no', `good` int(10) unsigned NOT NULL default '0', `view` int(10) unsigned NOT NULL default '0', `checkcode` varchar(32) NOT NULL default '', `Notify` enum('y','n') NOT NULL default 'n', `modified` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `attrib` enum('user','gold','free') NOT NULL default 'user', PRIMARY KEY (`uid`)) DEFAULT CHARSET=utf8; Query OK, 0 rows affected (0.03 sec) mysql> SELECT MIN(date) FROM daily WHERE memberID='8014' AND date>'2007-08-01'; +-----------+ | MIN(date) | +-----------+ | NULL | +-----------+ 1 row in set (0.00 sec) mysql> drop table daily; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 34 Current database: friend Query OK, 0 rows affected (0.00 sec) mysql> CREATE TABLE `daily` ( `uid` bigint(10) unsigned NOT NULL auto_increment, `memberID` bigint(10) unsigned NOT NULL default '0', `date` date NOT NULL default '0000-00-00', `created` datetime NOT NULL, `mood` smallint(6) NOT NULL default '0', `text` text NOT NULL, `private` set('no','hot','me','adult') NOT NULL default 'no', `good` int(10) unsigned NOT NULL default '0', `view` int(10) unsigned NOT NULL default '0', `checkcode` varchar(32) NOT NULL default '', `Notify` enum('y','n') NOT NULL default 'n', `modified` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `attrib` enum('user','gold','free') NOT NULL default 'user', PRIMARY KEY (`uid`), UNIQUE KEY `memberID_2` (`memberID`,`date`)) DEFAULT CHARSET=utf8; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 38 Current database: friend Query OK, 0 rows affected (1.48 sec) mysql> SELECT MIN(date) FROM daily WHERE memberID='8014' AND date>'2007-08-01'; ERROR 2013 (HY000): Lost connection to MySQL server during query (crashed.) mysql> CREATE TABLE `daily` ( `uid` bigint(10) unsigned NOT NULL auto_increment, `memberID` bigint(10) unsigned NOT NULL default '0', `date` date NOT NULL default '0000-00-00', `created` datetime NOT NULL, `mood` smallint(6) NOT NULL default '0', `text` text NOT NULL, `private` set('no','hot','me','adult') NOT NULL default 'no', `good` int(10) unsigned NOT NULL default '0', `view` int(10) unsigned NOT NULL default '0', `checkcode` varchar(32) NOT NULL default '', `Notify` enum('y','n') NOT NULL default 'n', `modified` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `attrib` enum('user','gold','free') NOT NULL default 'user', PRIMARY KEY (`uid`),KEY `date` (`date`,`private`,`uid`), KEY `diaryLast` (`memberID`,`created`)) DEFAULT CHARSET=utf8; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 13 Current database: friend Query OK, 0 rows affected (0.03 sec) mysql> SELECT MIN(date) FROM daily WHERE memberID='8014' AND date>'2007-08-01'; +-----------+ | MIN(date) | +-----------+ | NULL | +-----------+ 1 row in set (0.00 sec) It seems the problem is related with "UNIQUE KEY `memberID_2` (`memberID`,`date`)".
[30 Aug 2007 23:14]
Ken Chen
I switch back to "Version: '5.0.45-debug-log' socket: '/tmp/mysql2.sock' port: 3307 MySQL Community Server - Debug (GPL)". mysql> SELECT MIN(date) FROM daily WHERE memberID='8014' AND date>'2007-08-01'; ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 5 Current database: friend ERROR 2013 (HY000): Lost connection to MySQL server during query crashed! Is it same problem to cause unexpected crashing on non-debug version? I will remove the key "UNIQUE KEY `memberID_2` (`memberID`,`date`)".
[30 Aug 2007 23:23]
Ken Chen
I also try same statement on the FreeBSD, it still crashed mysqld '5.0.45-debug-log'. I hope these information is helpful. Why this statement will crash mysqld-debug everytime, but mysqld can run much more time?
[9 Oct 2007 18:25]
MySQL Verification Team
#testcase: drop table if exists `t`; create table `t`(`a` int,`b` date not null,key(`a`,`b`))engine=myisam; select min(`b`) from `t` where `a`='1' and `b`>'2007-08-01'; #crash seems to depend on the date used in the query.
[12 Oct 2007 14:13]
Konstantin Osipov
A crash is a P1
[18 Oct 2007 10:38]
Georgi Kodinov
Probably related to the fix for bug #27573
[18 Oct 2007 11:40]
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/35834 ChangeSet@1.2546, 2007-10-18 14:40:17+03:00, gkodinov@magare.gmz +3 -0 Bug #30715: Assertion failed: item_field->field->real_maybe_null(), file .\opt_sum.cc, line The MIN(field) can return NULL when all the row values in the group are NULL-able or if there were no rows. Fixed the assertion to reflect the case when there are no rows.
[23 Oct 2007 15:04]
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/36153 ChangeSet@1.2546, 2007-10-23 18:04:00+03:00, gkodinov@magare.gmz +3 -0 Bug #30715: Assertion failed: item_field->field->real_maybe_null(), file .\opt_sum.cc, line The optimizer pre-calculates the MIN/MAX values for queries like SELECT MIN(kp_k) WHERE kp_1 = const AND ... AND kp_k-1 = const when there is a key over kp_1...kp_k In doing so it was not checking correctly nullability and there was a superfluous assert(). Fixed by making sure that the field can be null before checking and taking out the wrong assert(). . Introduced a correct check for nullability The MIN(field) can return NULL when all the row values in the group are NULL-able or if there were no rows. Fixed the assertion to reflect the case when there are no rows.
[24 Oct 2007 8:15]
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/36235 ChangeSet@1.2546, 2007-10-24 11:15:08+03:00, gkodinov@magare.gmz +3 -0 Bug #30715: Assertion failed: item_field->field->real_maybe_null(), file .\opt_sum.cc, line The optimizer pre-calculates the MIN/MAX values for queries like SELECT MIN(kp_k) WHERE kp_1 = const AND ... AND kp_k-1 = const when there is a key over kp_1...kp_k In doing so it was not checking correctly nullability and there was a superfluous assert(). Fixed by making sure that the field can be null before checking and taking out the wrong assert(). . Introduced a correct check for nullability The MIN(field) can return NULL when all the row values in the group are NULL-able or if there were no rows. Fixed the assertion to reflect the case when there are no rows.
[16 Nov 2007 9:31]
Bugs System
Pushed into 5.0.52
[16 Nov 2007 9:33]
Bugs System
Pushed into 5.1.23-rc
[16 Nov 2007 9:35]
Bugs System
Pushed into 6.0.4-alpha
[19 Nov 2007 4:53]
Paul DuBois
Noted in 5.0.52, 5.1.23, 6.0.4 changelog. Using the MIN() or MAX() function to select one part of a multi-part key could cause a crash when the function result was NULL.