>Description: On an unsuccessful INSERT DELAYED using mysql_query(), there is disagreement between the two functions mysql_error() and mysql_errno(). Specifically, mysql_errno() will return 0 (indicating no error), whereas mysql_error() will return what really happened, e.g. "Table 'foo' doesn't exist".
>How-To-Repeat: int retval; unsigned int real_error; char *query="insert delayed into `headers_out` (id, item, val) values ('PfF5PsCoCj0AAEVCCiY','Content-Type','text/html')"; /* table "headers_out" hasn't been created yet... */ retval = mysql_query(mysql_log, query); real_error = mysql_errno(mysql_log); printf("Error %d, means %s", real_error, mysql_error(mysql_log)); What gets output from this pseudocodish snippet is: "Error 0, means Table 'apache_test.notes' doesn't exist" >Fix: Obviously the two error functions should agree; either, both reporting 'no error' or both agreeing that error 1146, nonexistent table, just happened. It would be preferable for the latter to be the fix, so one could then still check for success or failure of the INSERT DELAYED. I do confess that a strict reading of the INSERT DELAYED docs indicates that it doesn't bother to wait around to check for success/failure...so the "desired" fix might not be totally in line with the "strict, by-the-book" fix. It sure would be nice to know the fate of the delayed insert, though... >Submitter-Id: [EMAIL PROTECTED] >Originator: [EMAIL PROTECTED] >Organization: mod_log_sql http://www.grubbybaby.com/mod_log_sql >MySQL support: none >Synopsis: Disagreement between mysql_error() and mysql_errno() on INSERT DELAYED >Severity: serious >Priority: medium >Category: mysql >Class: sw-bug >Release: mysql-3.23.52 (Mandrake Linux MySQL RPM) >Environment: System: Linux crib.corp.grubbybaby.com 2.4.19-16mdkcustom #1 Sat Nov 30 17:47:29 PST 2002 i686 unknown unknown GNU/Linux Architecture: i686 Some paths: /usr//bin/perl /usr//bin/make /usr//bin/gmake /usr//bin/gcc /usr//bin/cc GCC: Reading specs from /usr//bin/../lib/gcc-lib/i586-mandrake-linux-gnu/3.2/specs Configured with: ../configure --prefix=/usr --libdir=/usr/lib --with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --enable-long-long --enable-__cxa_atexit --enable-languages=c,c++,ada,f77,objc,java --host=i586-mandrake-linux-gnu --with-system-zlib Thread model: posix gcc version 3.2 (Mandrake Linux 9.0 3.2-1mdk) Compilation info: CC='gcc-3.2' CFLAGS='-O3 -fomit-frame-pointer -pipe -mcpu=pentiumpro -march=i586 -ffast-math -fno-strength-reduce -fno-omit-frame-pointer' CXX='g++-3.2' CXXFLAGS='-O3 -fomit-frame-pointer -pipe -mcpu=pentiumpro -march=i586 -ffast-math -fno-strength-reduce -fno-omit-frame-pointer' LDFLAGS='' LIBC: lrwxr-xr-x 1 root root 13 Nov 30 16:34 /lib/libc.so.6 -> libc-2.2.5.so -rwxr-xr-x 1 root root 1147848 Aug 19 03:17 /lib/libc-2.2.5.so -rw-r--r-- 1 root root 178 Aug 19 03:08 /usr/lib/libc.so Configure command: ./configure '--disable-shared' '--with-mysqld-ldflags=-all-static' '--with-client-ldflags=-all-static' '--with-other-libc=/lib' '--without-berkeley-db' '--without-innodb' '--enable-assembler' '--enable-local-infile' '--with-mysqld-user=mysql' '--with-unix-socket-path=/var/lib/mysql/mysql.sock' '--prefix=/' '--libdir=/usr/lib' '--with-extra-charsets=complex' '--exec-prefix=/usr' '--libexecdir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--localstatedir=/var/lib/mysql' '--infodir=/usr/share/info' '--includedir=/usr/include' '--mandir=/usr/share/man' '--with-comment=Mandrake Linux MySQL RPM' 'CC=gcc-3.2' 'CFLAGS=-O3 -fomit-frame-pointer -pipe -mcpu=pentiumpro -march=i586 -ffast-math -fno-strength-reduce -fno-omit-frame-pointer' 'CXXFLAGS=-O3 -fomit-frame-pointer -pipe -mcpu=pentiumpro -march=i586 -ffast-math -fno-strength-reduce -fno-omit-frame-pointer' 'CXX=g++-3.2' --------------------------------------------------------------------- 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