>Description: Executing a SELECT DISTINCT statement in conjunction with the BINARY cast operator will crash MySQL server when the column being cast contains one or more null values.
>How-To-Repeat: Executing the following code from a mysql prompt will cause the MySQL server to crash and restart. create temporary table wassup ( rowid int not null AUTO_INCREMENT PRIMARY KEY, col1 varchar(10) null ) ; insert into wassup (col1) values ('aaa'), ('AAA'), (NULL) ; select distinct binary col1 from wassup ; >Fix: Work-arounds: Defining the column as binary during the create table statement alleviates the need for the binary cast during selects, and thereby eliminates the crashes. Alternatively, adding "where col1 is not null" to the select statement will also work. >Submitter-Id: <submitter ID> >Originator: Steve Severance >Organization: >MySQL support: none >Synopsis: SELECT DISTINCT BINARY crashes mysql on null values >Severity: non-critical >Priority: low >Category: mysql >Class: sw-bug >Release: mysql-3.23.47 (Official MySQL RPM) >Environment: System: Linux vexweb1 2.4.2-2smp #1 SMP Sun Apr 8 20:21:34 EDT 2001 i686 unknown Architecture: i686 Some paths: /usr/bin/perl /usr/bin/make /usr/bin/gmake /usr/bin/gcc /usr/bin/cc GCC: Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-81) Compilation info: CC='gcc' CFLAGS='-O6 -fno-omit-frame-pointer -mpentium' CXX='gcc' CXXFLAGS='-O6 -fno-omit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti -mpentium' LDFLAGS='' LIBC: lrwxrwxrwx 1 root root 13 Jan 4 16:56 /lib/libc.so.6 -> libc-2.2.2.so -rwxr-xr-x 1 root root 1236396 Apr 6 2001 /lib/libc-2.2.2.so -rw-r--r-- 1 root root 26350254 Apr 6 2001 /usr/lib/libc.a -rw-r--r-- 1 root root 178 Apr 6 2001 /usr/lib/libc.so Configure command: ./configure --disable-shared --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static --without-berkeley-db --without-innodb --enable-assembler --with-mysqld-user=mysql --with-unix-socket-path=/var/lib/mysql/mysql.sock --prefix=/ --with-extra-charsets=complex --exec-prefix=/usr --libexecdir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --localstatedir=/var/lib/mysql --infodir=/usr/info --includedir=/usr/include --mandir=/usr/man '--with-comment=Official MySQL RPM' --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php