Bug #3412 | Prepared statements returning rows fail in embedded database | ||
---|---|---|---|
Submitted: | 7 Apr 2004 7:09 | Modified: | 1 Jun 2004 20:02 |
Reporter: | Richard Tibbetts | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Embedded Library ( libmysqld ) | Severity: | S1 (Critical) |
Version: | 4.1.2-alpha-nightly-20040402 | OS: | Linux (Linux) |
Assigned to: | Alexey Botchkov | CPU Architecture: | Any |
[7 Apr 2004 7:09]
Richard Tibbetts
[14 Apr 2004 14:51]
Timothy Smith
Hi, I tried your program under Linux 2.4.25 kernel, libc.so.6. I pulled the lastest source code for 4.1.2 today (2004-04-14). I saved your program as prep.c, compiled and ran it as follows. Can you please provide similar information on how you build and run your test program? By the way, I used the BUILD/compile-pentium-debug script in the source tree to build MySQL 4.1.2-alpha. I didn't specify any flags (I forgot to add --with-embedded-server), so I had to cd into libmysqld and type 'make' after the build finished. I did not install the build; instead I set up a directory with symbolic links to make it look like an installed version of MySQL. tsmith@build:~/m/41m/t> rm data/build.log tsmith@build:~/m/41m/t> gmake clean rm -f prep t prep.o t.o *.core tsmith@build:~/m/41m/t> gmake g++ -g -W -Wall -fno-exceptions -fno-rtti -felide-constructors -I../include/mysql -D_THREAD_SAFE -D_REENTRANT prep.c -L../lib -lmysqld -lz -lm -lcrypt -lpthread -o prep tsmith@build:~/m/41m/t> ./prep --basedir=.. --datadir=./data --log success tsmith@build:~/m/41m/t> cat data/build.log mysql_embedded, Version: 4.1.2-alpha-embedded-log. embedded library Time Id Command Argument 040414 23:40:28 1 Query CREATE DATABASE IF NOT EXISTS test 1 Query DROP TABLE IF EXISTS test_table 1 Query CREATE TABLE test_table(f1 INT, f2 INT) 1 Query INSERT INTO test_table(f1,f2) VALUES(1,1),(2,2),(3,3) 1 Prepare SELECT f2 FROM test_table WHERE f1 = 1 tsmith@build:~/m/41m/t>
[15 Apr 2004 18:12]
Timothy Smith
This bug doesn't show up if I use ./BUILD/compile-pentium-debug --with-embedded-server; but it *does* show up if I use ./BUILD/compile-pentium --with-embedded-server. I haven't taken it beyond that, yet.
[4 May 2004 13:58]
Alexey Botchkov
I tried both BUILD/compile_pentium_debug and BUILD/compile_pentium (--with-embedded-server) on my Linux with latest 4.1 tree. Both worked ok with the example.
[6 May 2004 22:22]
Dean Ellis
I have re-tested this and am verifying it against 4.1.2 current (as I write). As noted, the problem only occurs against libmysqld; it succeeds against the normal server.
[28 May 2004 12:36]
Alexey Botchkov
bk commit - 4.1 tree (hf:1.1860) BUG#3412
[1 Jun 2004 20:02]
Alexey Botchkov
Thank you for your bug report. This issue has been committed to our source repository of that product and will be incorporated into the next release. If necessary, you can access the source repository and build the latest available version, including the bugfix, yourself. More information about accessing the source trees is available at http://www.mysql.com/doc/en/Installing_source_tree.html