summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormsvensson@neptunus.(none) <>2006-02-21 09:28:36 +0100
committermsvensson@neptunus.(none) <>2006-02-21 09:28:36 +0100
commit751d625865f8f8ed869ccb1ca73d816f60f4cfa5 (patch)
tree91206e3949d24c1331a1bd58ccf69a6862ed54f7
parent8e9d5356762631b55634ed94d2fd4b378c27625d (diff)
parent4cde1d1259e5670f6673053c798aed52eab9879a (diff)
downloadmariadb-git-751d625865f8f8ed869ccb1ca73d816f60f4cfa5.tar.gz
Merge neptunus.(none):/home/msvensson/mysql/bug17382/my51-bug17382
into neptunus.(none):/home/msvensson/mysql/mysql-5.1
-rw-r--r--client/Makefile.am19
-rw-r--r--client/mysqlimport.c8
-rw-r--r--mysql-test/r/mysqldump.result175
-rw-r--r--mysql-test/t/disabled.def1
-rw-r--r--mysql-test/t/mysqldump.test18
5 files changed, 203 insertions, 18 deletions
diff --git a/client/Makefile.am b/client/Makefile.am
index 98f9dd019b5..d95b4e39c6a 100644
--- a/client/Makefile.am
+++ b/client/Makefile.am
@@ -25,10 +25,13 @@ endif
INCLUDES = -I$(top_builddir)/include \
-I$(top_srcdir)/include \
-I$(top_srcdir)/regex \
- $(openssl_includes) $(yassl_includes)
+ $(openssl_includes) $(yassl_includes)
LIBS = @CLIENT_LIBS@
LDADD= @CLIENT_EXTRA_LDFLAGS@ $(CLIENT_THREAD_LIBS) \
$(top_builddir)/libmysql/libmysqlclient.la
+LDADD_R= @CLIENT_EXTRA_LDFLAGS@ \
+ $(CLIENT_THREAD_LIBS) \
+ $(top_builddir)/libmysql_r/libmysqlclient_r.la
bin_PROGRAMS = mysql mysqladmin mysqlcheck mysqlshow \
mysqldump mysqlimport mysqltest mysqlbinlog \
mysqltestmanagerc mysqltestmanager-pwgen \
@@ -48,15 +51,11 @@ mysqlbinlog_SOURCES = mysqlbinlog.cc $(top_srcdir)/mysys/mf_tempdir.c \
$(top_srcdir)/mysys/my_vle.c \
$(top_srcdir)/mysys/base64.c
mysqlbinlog_LDADD = $(LDADD) $(CXXLDFLAGS)
-mysqlslap_LDADD = $(CXXLDFLAGS) $(CLIENT_THREAD_LIBS) \
- @CLIENT_EXTRA_LDFLAGS@ \
- $(top_builddir)/libmysql_r/libmysqlclient_r.la \
- $(top_builddir)/mysys/libmysys.a
-mysqlimport_LDADD = $(CXXLDFLAGS) $(CLIENT_THREAD_LIBS) \
- @CLIENT_EXTRA_LDFLAGS@ \
- $(top_builddir)/libmysql_r/libmysqlclient_r.la \
- $(top_builddir)/mysys/libmysys.a
-mysqltestmanager_pwgen_SOURCES = mysqlmanager-pwgen.c
+mysqlslap_LDADD = $(CXXLDFLAGS) $(LDADD_R) \
+ $(top_builddir)/mysys/libmysys.a
+mysqlimport_LDADD = $(CXXLDFLAGS) $(LDADD_R) \
+ $(top_builddir)/mysys/libmysys.a
+mysqltestmanager_pwgen_SOURCES = mysqlmanager-pwgen.c
mysqltestmanagerc_SOURCES= mysqlmanagerc.c $(yassl_dummy_link_fix)
mysqlcheck_SOURCES= mysqlcheck.c $(yassl_dummy_link_fix)
mysqlshow_SOURCES= mysqlshow.c $(yassl_dummy_link_fix)
diff --git a/client/mysqlimport.c b/client/mysqlimport.c
index edaaf20d98b..81040bed993 100644
--- a/client/mysqlimport.c
+++ b/client/mysqlimport.c
@@ -145,13 +145,11 @@ static struct my_option my_long_options[] =
(gptr*) &opt_mysql_unix_port, (gptr*) &opt_mysql_unix_port, 0, GET_STR,
REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
#include <sslopt-longopts.h>
-#if 0
{"use-threads", OPT_USE_THREADS,
"Load files in parallel. The argument is the number "
"of threads to use for loading data.",
(gptr*) &opt_use_threads, (gptr*) &opt_use_threads, 0,
GET_UINT, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
-#endif
#ifndef DONT_ALLOW_USER_CHANGE
{"user", 'u', "User for login if not current user.", (gptr*) &current_user,
(gptr*) &current_user, 0, GET_STR, REQUIRED_ARG, 0, 0, 0, 0, 0, 0},
@@ -292,7 +290,7 @@ static int write_to_table(char *filename, MYSQL *mysql)
DBUG_PRINT("enter",("filename: %s",filename));
fn_format(tablename, filename, "", "", 1 | 2); /* removes path & ext. */
- if (! opt_local_file)
+ if (!opt_local_file)
strmov(hard_path,filename);
else
my_load_path(hard_path, filename, NULL); /* filename includes the path */
@@ -640,9 +638,9 @@ loop_label:
if (lock_tables)
lock_table(mysql, argc, argv);
for (; *argv != NULL; argv++)
- if ((error=write_to_table(*argv, mysql)))
+ if ((error= write_to_table(*argv, mysql)))
if (exitcode == 0)
- exitcode = error;
+ exitcode= error;
db_disconnect(current_host, mysql);
}
my_free(opt_password,MYF(MY_ALLOW_ZERO_PTR));
diff --git a/mysql-test/r/mysqldump.result b/mysql-test/r/mysqldump.result
index 79b22964f8a..2a0d1d7da78 100644
--- a/mysql-test/r/mysqldump.result
+++ b/mysql-test/r/mysqldump.result
@@ -2650,3 +2650,178 @@ DELIMITER ;
DROP TRIGGER tr1;
DROP TABLE t1;
+create table t1 (a text , b text);
+create table t2 (a text , b text);
+insert t1 values ("Duck, Duck", "goose");
+insert t1 values ("Duck, Duck", "pidgeon");
+insert t2 values ("We the people", "in order to perform");
+insert t2 values ("a more perfect", "union");
+select * from t1;
+a b
+Duck, Duck goose
+Duck, Duck pidgeon
+select * from t2;
+a b
+We the people in order to perform
+a more perfect union
+test.t1: Records: 2 Deleted: 0 Skipped: 0 Warnings: 0
+test.t2: Records: 2 Deleted: 0 Skipped: 0 Warnings: 0
+select * from t1;
+a b
+Duck, Duck goose
+Duck, Duck pidgeon
+Duck, Duck goose
+Duck, Duck pidgeon
+select * from t2;
+a b
+We the people in order to perform
+a more perfect union
+We the people in order to perform
+a more perfect union
+create table words(a varchar(255));
+create table words2(b varchar(255));
+select * from t1;
+a b
+Duck, Duck goose
+Duck, Duck pidgeon
+Duck, Duck goose
+Duck, Duck pidgeon
+Duck, Duck goose
+Duck, Duck pidgeon
+select * from t2;
+a b
+We the people in order to perform
+a more perfect union
+We the people in order to perform
+a more perfect union
+We the people in order to perform
+a more perfect union
+select * from words;
+a
+Aarhus
+Aaron
+Ababa
+aback
+abaft
+abandon
+abandoned
+abandoning
+abandonment
+abandons
+Aarhus
+Aaron
+Ababa
+aback
+abaft
+abandon
+abandoned
+abandoning
+abandonment
+abandons
+abase
+abased
+abasement
+abasements
+abases
+abash
+abashed
+abashes
+abashing
+abasing
+abate
+abated
+abatement
+abatements
+abater
+abates
+abating
+Abba
+abbe
+abbey
+abbeys
+abbot
+abbots
+Abbott
+abbreviate
+abbreviated
+abbreviates
+abbreviating
+abbreviation
+abbreviations
+Abby
+abdomen
+abdomens
+abdominal
+abduct
+abducted
+abduction
+abductions
+abductor
+abductors
+abducts
+Abe
+abed
+Abel
+Abelian
+Abelson
+Aberdeen
+Abernathy
+aberrant
+aberration
+select * from words2;
+b
+abase
+abased
+abasement
+abasements
+abases
+abash
+abashed
+abashes
+abashing
+abasing
+abate
+abated
+abatement
+abatements
+abater
+abates
+abating
+Abba
+abbe
+abbey
+abbeys
+abbot
+abbots
+Abbott
+abbreviate
+abbreviated
+abbreviates
+abbreviating
+abbreviation
+abbreviations
+Abby
+abdomen
+abdomens
+abdominal
+abduct
+abducted
+abduction
+abductions
+abductor
+abductors
+abducts
+Abe
+abed
+Abel
+Abelian
+Abelson
+Aberdeen
+Abernathy
+aberrant
+aberration
+drop table words;
+mysql-import: Error: 1146, Table 'test.words' doesn't exist, when using table: words
+drop table t1;
+drop table t2;
+drop table words2;
diff --git a/mysql-test/t/disabled.def b/mysql-test/t/disabled.def
index dabc0efce77..30b298ece34 100644
--- a/mysql-test/t/disabled.def
+++ b/mysql-test/t/disabled.def
@@ -34,4 +34,3 @@ rpl_sp : Bug#16456
rpl_until : Unstable test case, bug#15886
sp-goto : GOTO is currently is disabled - will be fixed in the future
rpl_ndb_log : results are not deterministic
-mysqldump : Bug#17443 mysqlimport --use-threads=5 gives crashes
diff --git a/mysql-test/t/mysqldump.test b/mysql-test/t/mysqldump.test
index 90a6782200d..dc711975569 100644
--- a/mysql-test/t/mysqldump.test
+++ b/mysql-test/t/mysqldump.test
@@ -1049,7 +1049,6 @@ SET SQL_MODE = @old_sql_mode;
DROP TRIGGER tr1;
DROP TABLE t1;
---disable_parsing
#
# Added for use-thread option
#
@@ -1070,7 +1069,22 @@ select * from t2;
--exec $MYSQL_IMPORT --silent --use-threads=5 test $MYSQLTEST_VARDIR/tmp/t1.txt $MYSQLTEST_VARDIR/tmp/t2.txt
select * from t1;
select * from t2;
+# Now we test with multiple threads, but less threads than files.
+create table words(a varchar(255));
+create table words2(b varchar(255));
+--exec $MYSQL_IMPORT --silent --use-threads=2 test $MYSQLTEST_VARDIR/tmp/t1.txt $MYSQLTEST_VARDIR/tmp/t2.txt $MYSQLTEST_VARDIR/std_data_ln/words.dat $MYSQLTEST_VARDIR/std_data_ln/words2.dat
+select * from t1;
+select * from t2;
+select * from words;
+select * from words2;
+
+# Drop table "words" and run with threads, should fail
+drop table words;
+--replace_regex /.*mysqlimport/mysql-import/
+--error 1
+--exec $MYSQL_IMPORT --silent --use-threads=2 test $MYSQLTEST_VARDIR/tmp/t1.txt $MYSQLTEST_VARDIR/tmp/t2.txt $MYSQLTEST_VARDIR/std_data_ln/words.dat $MYSQLTEST_VARDIR/std_data_ln/words2.dat 2>&1
drop table t1;
drop table t2;
---enable_parsing
+
+drop table words2;