Bug #17382 mysql-test-run mysqldump fails with mysqlimport: Error:client run out of memory
Submitted: 14 Feb 2006 15:33 Modified: 24 Feb 2006 8:33
Reporter: Andrei Elkin Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: mysqldump Command-line Client Severity:S3 (Non-critical)
Version:5.1.7 BK OS:Linux (Suse Linux 10)
Assigned to: Magnus Blåudd CPU Architecture:Any

[14 Feb 2006 15:33] Andrei Elkin
Description:
could not run this test having pure cloned version of 5.1-new tree.
the server was built with
 BUILD/compile-pentium-debug-max-no-ndb

How to repeat:
mysql-test-run mysqldump
[14 Feb 2006 19:58] MySQL Verification Team
Thank you for the bug report.

TEST                            RESULT
-------------------------------------------------------
mysqldump                      [ fail ]
[14 Feb 2006 23:59] MySQL Verification Team
Verified on Suse Linux 10:

miguel@hegel:~/t/mysql-5.1-new/mysql-test> ./mysql-test-run mysqldump
Installing Test Databases
Removing Stale Files
Installing Master Databases
running  ../sql/mysqld --no-defaults --bootstrap --skip-grant-tables     --basedir=. --datadir=./var/master-data --skip-innodb --skip-ndbcluster --skip-bdb     --language=../sql/share/english/ --character-sets-dir=../sql/share/charsets/
Installing Slave Databases
running  ../sql/mysqld --no-defaults --bootstrap --skip-grant-tables     --basedir=. --datadir=./var/slave-data --skip-innodb --skip-ndbcluster --skip-bdb     --language=../sql/share/english/ --character-sets-dir=../sql/share/charsets/
Manager disabled, skipping manager start.
Loading Standard Test Databases
Starting Tests

TEST                            RESULT
-------------------------------------------------------
mysqldump                      [ fail ]

Errors are (from /home/miguel/t/mysql-5.1-new/mysql-test/var/log/mysqltest-time) :
/home/miguel/t/mysql-5.1-new/client/.libs/mysqlimport: Error: MySQL client ran out of memory
mysqltest: At line 1069: command "$MYSQL_IMPORT --use-threads=5 test $MYSQLTEST_VARDIR/tmp/t1.txt $MYSQLTEST_VARDIR/tmp/t2.txt" failed
(the last lines may be the most important ones)

Aborting: mysqldump failed in default mode. To continue, re-run with '--force'.

Ending Tests
Shutting-down MySQL daemon

Master shutdown finished
Slave shutdown finished
miguel@hegel:~/t/mysql-5.1-new/mysql-test> cat /home/miguel/t/mysql-5.1-new/mysql-test/va
valgrind.supp  var/           
miguel@hegel:~/t/mysql-5.1-new/mysql-test> cat /home/miguel/t/mysql-5.1-new/mysql-test/var/log/mysqltest-time 
/home/miguel/t/mysql-5.1-new/client/.libs/mysqlimport: Error: MySQL client ran out of memory
mysqltest: At line 1069: command "$MYSQL_IMPORT --use-threads=5 test $MYSQLTEST_VARDIR/tmp/t1.txt $MYSQLTEST_VARDIR/tmp/t2.txt" failed
miguel@hegel:~/t/mysql-5.1-new/mysql-test>
[15 Feb 2006 19:03] Kristian Nielsen
Maybe it's just me, but shouldn't mysqlimport be linked with the thread-safe mysqlclient library?

I see this in client/Makefile.am:

    LDADD= @CLIENT_EXTRA_LDFLAGS@ $(top_builddir)/libmysql/libmysqlclient.la

And this:

./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data --libexecdir=/usr/local/mysql/bin --with-extra-charsets=complex --with-server-suffix=-max --enable-thread-safe-client --enable-local-infile --disable-shared --with-zlib-dir=bundled --with-big-tables --with-readline --with-archive-storage-engine --with-innodb --with-big-tables --with-berkeley-db --with-example-storage-engine --with-blackhole-storage-engine --with-ndbcluster --with-federated-storage-engine --with-csv-storage-engine --with-debug
...
/bin/sh ../libtool --preserve-dup-deps --mode=link gcc  -g  -DDBUG_ON -DSAFE_MUTEX -O2 -g -march=i586 -mcpu=i686   -fno-implicit-templates -fno-exceptions -fno-rtti  -rdynamic  -o mysqlimport  mysqlimport.o  ../libmysql/libmysqlclient.la  -lpthread ../mysys/libmysys.a  -lcrypt -lnsl -lm   ../zlib/libz.la 

The mysqlimport program is linked with libmysql/libmysqlclient.la, shouldn't that be libmysqlclient_r/libmysqlclient_r.la?
[17 Feb 2006 14:52] 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/2794
[17 Feb 2006 16:22] Magnus Blåudd
Approved by Jani
[17 Feb 2006 16:22] Magnus Blåudd
Pushed to 5.1.8
[17 Feb 2006 17:19] 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/2808
[17 Feb 2006 17:25] Magnus Blåudd
Reopening, "--use-threads" option to be checked further.
[20 Feb 2006 12:05] 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/2906
[24 Feb 2006 8:33] Magnus Blåudd
Pushed a fix to 5.0.19 and 5.1.8 that makes each thread in mysqlimport use it's own MYSQL*.

No need to document.