>Description:
        Using the following statement on empyt innobase tables crashes the 
MySQL-Server:
                select MAX(col3) from crashTable where col1 = 1 and col2 = 7;

>How-To-Repeat:
    CREATE TABLE IF NOT EXISTS crashTable (
                col1       SMALLINT UNSIGNED NOT NULL,
                col2       SMALLINT UNSIGNED NOT NULL,
                col3       INT UNSIGNED NOT NULL,
                col4       INT UNSIGNED NOT NULL,
                txtLen     INT UNSIGNED,
                txt        LONGBLOB,
                UNIQUE     crashKey(col1, col2, col3, col4)
        ) TYPE = InnoDB;

        select MAX(col3) from crashTable where col1 = 1 and col2 = 7;

        Note: this only crashes when the table type is innobase - the select
        works fine with MyISAM.

        Note2: partial query statements, i.e. "select MAX(col3) from crashTable"
        and "select col3 from crashTable where col1 = 1 and col2 = 7" work fine.

        Note3: the statement crashes the server only when the table is EMPTY.

>Fix:
        
        Inserting a default record with any values prevents a crash and delivers
        a correct result (provided that the default record does not contain values
        that might be 'real' and thus read...)

        INSERT INTO crashTable VALUES (0, 0, 0, 0, NULL, NULL);

>Submitter-Id:  Ove
>Originator:    Ove
>Organization:  AdNovum Informatik AG
  +---------------------------------------------------------------------+
   Ove Hiltwein                           mailto:[EMAIL PROTECTED]
   Software Architect und Software Engineer    dipl. Informatik-Ing. ETH
  
   AdNovum Informatik AG http://www.adnovum.ch   phone: ++41 1  272 6111
   Roentgenstrasse 22, CH-8005 Zuerich           fax:   ++41 1  272 6312
  +---------------------------------------------------------------------+
   AdNovum Software Inc. San Mateo, CA 94404     phone: ++1 650 525 9322
   1400 Fashion Island Boulevard, Suite 309      fax:   ++1 650 525 9324
  +------------------Fight for your right to bare arms------------------+
>
>MySQL support: none
>Synopsis:  "select MAX(col3) ..." statement on empty innobase table crashes MySQL 
>server
>Severity:      non-critical
>Priority:      low
>Category:      mysql
>Class:         sw-bug
>Release:       mysql-3.23.43 (Source distribution)

>Environment:
        
System: SunOS lucas 5.6 Generic_105181-26 sun4u sparc SUNW,Ultra-5_10
Architecture: sun4

Some paths:  /bin/perl /home/ove/.bin/make /opt/pd/bin/gcc /opt/SUNWspro/bin/cc
GCC: Reading specs from 
/opt/pd/gcc-2.95.3/lib/gcc-lib/sparc-sun-solaris2.6/2.95.3/specs
gcc version 2.95.3 20010315 (release)
Compilation info: CC='/opt/pd/gcc-2.95.2/bin/gcc'  CFLAGS='-O3'  
CXX='/opt/pd/gcc-2.95.2/bin/gcc'  CXXFLAGS='-O3
-felide-constructors -fno-exceptions -fno-rtti'  LDFLAGS=''
LIBC: 
-rw-r--r--   1 bin      bin      1623504 May 25 04:55 /lib/libc.a
lrwxrwxrwx   1 root     root          11 Jun  8 19:59 /lib/libc.so -> ./libc.so.1
-rwxr-xr-x   1 bin      bin      1024888 May 25 04:55 /lib/libc.so.1
-rw-r--r--   1 bin      bin      1623504 May 25 04:55 /usr/lib/libc.a
lrwxrwxrwx   1 root     root          11 Jun  8 19:59 /usr/lib/libc.so -> ./libc.so.1
-rwxr-xr-x   1 bin      bin      1024888 May 25 04:55 /usr/lib/libc.so.1
Configure command: ./configure --prefix=/opt/mysql --localstatedir=$LOCALSTATEDIR 
--with-innodb --without-debug
Perl: This is perl, version 4.0

---------------------------------------------------------------------
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

Reply via email to