diff options
-rw-r--r-- | Docs/manual.texi | 41 | ||||
-rw-r--r-- | client/mysqltest.c | 79 | ||||
-rw-r--r-- | mysql-test/README | 4 | ||||
-rw-r--r-- | mysql-test/include/have_default_master.inc | 3 | ||||
-rw-r--r-- | mysql-test/include/master-slave.inc | 8 | ||||
-rw-r--r-- | mysql-test/install_test_db.sh | 1 | ||||
-rw-r--r-- | mysql-test/mysql-test-run.sh | 168 | ||||
-rw-r--r-- | mysql-test/r/bigint.result | 4 | ||||
-rw-r--r-- | mysql-test/r/have_default_master.require | 2 | ||||
-rw-r--r-- | mysql-test/t/bigint.test | 2 | ||||
-rw-r--r-- | mysql-test/t/rpl000008.test | 2 | ||||
-rw-r--r-- | mysql-test/t/rpl000012.test | 2 | ||||
-rw-r--r-- | mysql-test/t/rpl000013.test | 2 | ||||
-rw-r--r-- | mysql-test/t/rpl000014.test | 1 | ||||
-rw-r--r-- | mysql-test/t/rpl000015.test | 5 | ||||
-rw-r--r-- | mysql-test/t/rpl000016.test | 5 |
16 files changed, 199 insertions, 130 deletions
diff --git a/Docs/manual.texi b/Docs/manual.texi index 87b6ccf7d02..095cc68d48d 100644 --- a/Docs/manual.texi +++ b/Docs/manual.texi @@ -15430,6 +15430,8 @@ mysql> select 'new*\n*line' REGEXP 'new\\*.\\*line'; -> 1 mysql> select "a" REGEXP "A", "a" REGEXP BINARY "A"; -> 1 0 +mysql> select "a" REGEXP "^[a-d]"; + -> 1 @end example @item @@ -15495,6 +15497,16 @@ Note that in some context @strong{MySQL} will not be able to use the index efficiently when you cast an indexed column to @code{BINARY}. @end table +If you want to compare a blob case-insensitively you can always convert +the blob to upper case before doing the comparison: + +@example +SELECT 'A' LIKE UPPER(blob_col) FROM table_name; +@end example + +We plan to soon introduce casting between different character sets to +make string comparison even more flexible. + @findex control flow functions @findex functions, control flow @node Control flow functions, Mathematical functions, Casts, Functions @@ -18720,6 +18732,10 @@ The default is ascending order; this may be specified explicitly using the @code{ASC} keyword. @item +You can in the @code{WHERE} clause use any of the functions that +@strong{MySQL} support. @xref{Functions}. + +@item The @code{HAVING} clause can refer to any column or alias named in the @code{select_expression}. It is applied last, just before items are sent to the client, with no optimization. Don't use @code{HAVING} for items that @@ -18815,6 +18831,13 @@ cannot already exist (among other things, this prevents database tables and files such as @file{/etc/passwd} from being destroyed). You must have the @strong{file} privilege on the server host to use this form of @code{SELECT}. +@code{SELECT ... INTO OUTFILE} is mainly intended to let you very +quickly dump a table on the server machine. If you want to create the +resulting file on some other host than the server host you can't use +@code{SELECT ... INTO OUTFILE}. In this case you should instead use some +client program like @code{mysqldump --tab} or @code{mysql -e "SELECT +..." > outfile} to generate the file. + @code{SELECT ... INTO OUTFILE} is the complement of @code{LOAD DATA INFILE}; the syntax for the @code{export_options} part of the statement consists of the same @code{FIELDS} and @code{LINES} clauses that are used @@ -18835,19 +18858,29 @@ Additionally, @code{ASCII 0} is converted to @code{ESCAPED BY} followed by 0 The reason for the above is that you MUST escape any @code{FIELDS TERMINATED BY}, @code{ESCAPED BY}, or @code{LINES TERMINATED BY} -characters to reliably be able to read the file -back. @code{ASCII 0} is escaped to make it easier to view with some -pagers. +characters to reliably be able to read the file back. @code{ASCII 0} is +escaped to make it easier to view with some pagers. As the resulting file doesn't have to conform to the SQL syntax, nothing else need be escaped. -@end itemize +Here follows an example of getting a file in the format used by many +old programs. + +@example +SELECT a,b,a+b INTO OUTFILE "/tmp/result.text" +FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' +LINES TERMINATED BY "\n" +FROM test_table; +@end example + +@item @findex DUMPFILE If you use @code{INTO DUMPFILE} instead of @code{INTO OUTFILE}, @strong{MySQL} will only write one row into the file, without any column or line terminations and without any escaping. This is useful if you want to store a blob in a file. +@end itemize @findex JOIN @findex INNER JOIN diff --git a/client/mysqltest.c b/client/mysqltest.c index d65d451f408..ef6fae184f3 100644 --- a/client/mysqltest.c +++ b/client/mysqltest.c @@ -23,7 +23,7 @@ * Monty **/ -#define MTEST_VERSION "1.2" +#define MTEST_VERSION "1.4" #include "global.h" #include "my_sys.h" @@ -50,7 +50,7 @@ #define MIN_VAR_ALLOC 32 #define BLOCK_STACK_DEPTH 32 -int record = 0, verbose = 0, silent = 0; +int record = 0, verbose = 0, silent = 0, opt_sleep=0; static char *db = 0, *pass=0; const char* user = 0, *host = 0, *unix_sock = 0; int port = 0; @@ -62,6 +62,7 @@ FILE* file_stack[MAX_INCLUDE_DEPTH]; FILE** cur_file; FILE** file_stack_end; uint lineno_stack[MAX_INCLUDE_DEPTH]; +char TMPDIR[FN_REFLEN]; int block_stack[BLOCK_STACK_DEPTH]; int *cur_block, *block_stack_end; @@ -494,38 +495,41 @@ int do_let(struct query* q) int do_sleep(struct query* q) { - char* p, *arg; + char *p; struct timeval t; int dec_mul = 1000000; p = (char*)q->q + q->first_word_len; while(*p && isspace(*p)) p++; if (!*p) die("Missing argument in sleep\n"); - arg = p; - t.tv_sec = atoi(arg); t.tv_usec = 0; - while(*p && *p != '.' && !isspace(*p)) - p++; - if (*p == '.') + if (opt_sleep) + t.tv_sec = opt_sleep; + else { - char c; - char *p_end; - p++; - p_end = p + 6; - - for(;p <= p_end; ++p) + t.tv_sec = atoi(p); + while(*p && *p != '.' && !isspace(*p)) + p++; + if (*p == '.') { - c = *p - '0'; - if (c < 10 && c >= 0) + char c; + char *p_end; + p++; + p_end = p + 6; + + for(;p <= p_end; ++p) { - t.tv_usec = t.tv_usec * 10 + c; - dec_mul /= 10; + c = *p - '0'; + if (c < 10 && c >= 0) + { + t.tv_usec = t.tv_usec * 10 + c; + dec_mul /= 10; + } + else + break; } - else - break; } } - *p = 0; t.tv_usec *= dec_mul; return select(0,0,0,0, &t); } @@ -617,6 +621,7 @@ int do_connect(struct query* q) char* con_name, *con_user,*con_pass, *con_host, *con_port_str, *con_db, *con_sock; char* p; + char buff[FN_REFLEN]; p = q->q + q->first_word_len; @@ -636,6 +641,7 @@ int do_connect(struct query* q) if (!mysql_init(&next_con->mysql)) die("Failed on mysql_init()"); + con_sock=fn_format(buff, con_sock, TMPDIR,"",0); if (!mysql_real_connect(&next_con->mysql, con_host, con_user, con_pass, con_db, atoi(con_port_str), con_sock, 0)) die("Could not open connection '%s': %s", con_name, @@ -952,19 +958,21 @@ int read_query(struct query** q_ptr) struct option long_options[] = { - {"verbose", no_argument, 0, 'v'}, - {"version", no_argument, 0, 'V'}, - {"silent", no_argument, 0, 'q'}, + {"database", required_argument, 0, 'D'}, + {"help", no_argument, 0, '?'}, + {"host", required_argument, 0, 'h'}, + {"password", optional_argument, 0, 'p'}, + {"port", required_argument, 0, 'P'}, {"quiet", no_argument, 0, 'q'}, {"record", no_argument, 0, 'r'}, {"result-file", required_argument, 0, 'R'}, - {"help", no_argument, 0, '?'}, - {"user", required_argument, 0, 'u'}, - {"password", optional_argument, 0, 'p'}, - {"host", required_argument, 0, 'h'}, + {"silent", no_argument, 0, 'q'}, + {"sleep", required_argument, 0, 'T'}, {"socket", required_argument, 0, 'S'}, - {"database", required_argument, 0, 'D'}, - {"port", required_argument, 0, 'P'}, + {"tmpdir", required_argument, 0, 't'}, + {"user", required_argument, 0, 'u'}, + {"verbose", no_argument, 0, 'v'}, + {"version", no_argument, 0, 'V'}, {0, 0,0,0} }; @@ -991,6 +999,8 @@ void usage() -D, --database=... Database to use.\n\ -P, --port=... Port number to use for connection.\n\ -S, --socket=... Socket file to use for connection.\n\ + -t, --tmpdir=... Temporary directory where sockets are put\n\ + -T, --sleep=# Sleep always this many seconds on sleep commands\n\ -r, --record Record output of test_file into result file.\n\ -R, --result-file=... Read/Store result from/in this file.\n\ -v, --verbose Write more.\n\ @@ -1006,7 +1016,7 @@ int parse_args(int argc, char **argv) load_defaults("my",load_default_groups,&argc,&argv); - while((c = getopt_long(argc, argv, "h:p::u:P:D:S:R:?rvVq", + while((c = getopt_long(argc, argv, "h:p::u:P:D:S:R:t:T:?rvVq", long_options, &option_index)) != EOF) { switch(c) @@ -1048,6 +1058,12 @@ int parse_args(int argc, char **argv) case 'q': silent = 1; break; + case 't': + strnmov(TMPDIR,optarg,sizeof(TMPDIR)); + break; + case 'T': + opt_sleep=atoi(optarg); + break; case 'V': print_version(); exit(0); @@ -1255,6 +1271,7 @@ int main(int argc, char** argv) my_bool require_file=0; char save_file[FN_REFLEN]; save_file[0]=0; + TMPDIR[0]=0; MY_INIT(argv[0]); memset(cons, 0, sizeof(cons)); diff --git a/mysql-test/README b/mysql-test/README index ca7284d173a..6ad59ea6a8b 100644 --- a/mysql-test/README +++ b/mysql-test/README @@ -18,6 +18,10 @@ You can create your own test cases. To create a test case: We would appreciate if the test tables were called t1, t2, t3 ... (to not conflict too much with existing tables). + + Your test should begin by dropping the tables you are going to create and + end by dropping them again. This will ensure that one can run the test + over and over again. If you are using mysqltest commands (like result file names) in your test case you should do create the result file as follows: diff --git a/mysql-test/include/have_default_master.inc b/mysql-test/include/have_default_master.inc new file mode 100644 index 00000000000..eff1414c16a --- /dev/null +++ b/mysql-test/include/have_default_master.inc @@ -0,0 +1,3 @@ +-- require r/have_default_master.require +connection master; +show variables like "port"; diff --git a/mysql-test/include/master-slave.inc b/mysql-test/include/master-slave.inc index 8270c0e46f6..69ab73db6b5 100644 --- a/mysql-test/include/master-slave.inc +++ b/mysql-test/include/master-slave.inc @@ -1,7 +1,7 @@ -connect (master,localhost,root,,test,0,var/tmp/mysql.sock); -connect (master1,localhost,root,,test,0,var/tmp/mysql.sock); -connect (slave,localhost,root,,test,0,var/tmp/mysql-slave.sock); -connect (slave1,localhost,root,,test,0,var/tmp/mysql-slave.sock); +connect (master,localhost,root,,test,0,mysql-master.sock); +connect (master1,localhost,root,,test,0,mysql-master.sock); +connect (slave,localhost,root,,test,0,mysql-slave.sock); +connect (slave1,localhost,root,,test,0,mysql-slave.sock); connection slave; !slave stop; @r/slave-stopped.result show status like 'Slave_running'; diff --git a/mysql-test/install_test_db.sh b/mysql-test/install_test_db.sh index 28e6ad34419..3ee2aa42fad 100644 --- a/mysql-test/install_test_db.sh +++ b/mysql-test/install_test_db.sh @@ -41,6 +41,7 @@ fi # On IRIX hostname is in /usr/bsd so add this to the path PATH=$PATH:/usr/bsd hostname=`hostname` # Install this too in the user table +hostname="$hostname%" # Fix if not fully qualified hostname resolved=127.0.0.1 diff --git a/mysql-test/mysql-test-run.sh b/mysql-test/mysql-test-run.sh index 62d0e990053..65e4f395e75 100644 --- a/mysql-test/mysql-test-run.sh +++ b/mysql-test/mysql-test-run.sh @@ -19,7 +19,7 @@ TZ=GMT-3; export TZ # for UNIX_TIMESTAMP tests to work # Program Definitions #-- -PATH=/bin:/usr/bin:/usr/local/bin +PATH=/bin:/usr/bin:/usr/local/bin:/usr/bsd # No paths below as we can't be sure where the program is! @@ -65,6 +65,7 @@ if [ -d ../sql ] ; then else BINARY_DIST=1 fi + #BASEDIR is always one above mysql-test directory CWD=`pwd` cd .. @@ -83,28 +84,77 @@ USERT=0 SYST=0 REALT=0 MYSQL_TMP_DIR=$MYSQL_TEST_DIR/var/tmp -TIMEFILE="$MYSQL_TMP_DIR/mysqltest-time" RES_SPACE=" " MYSQLD_SRC_DIRS="strings mysys include extra regex isam merge myisam \ myisammrg heap sql" -GCOV_MSG=$MYSQL_TMP_DIR/mysqld-gcov.out -GCOV_ERR=$MYSQL_TMP_DIR/mysqld-gcov.err MASTER_RUNNING=0 +MASTER_MYPORT=9306 SLAVE_RUNNING=0 +SLAVE_MYPORT=9307 + +EXTRA_MYSQL_TEST_OPT="" +USE_RUNNING_SERVER=1 +DO_GCOV="" +DO_GDB="" +DO_DDD="" +SLEEP_TIME=2 + +while test $# -gt 0; do + case "$1" in + --force ) FORCE=1 ;; + --local) USE_RUNNING_SERVER="" ;; + --tmpdir=*) MYSQL_TMP_DIR=`$ECHO "$1" | $SED -e "s;--tmpdir=;;"` ;; + --master_port=*) MASTER_MYPORT=`$ECHO "$1" | $SED -e "s;--master_port=;;"` ;; + --slave_port=*) SLAVE_MYPORT=`$ECHO "$1" | $SED -e "s;--slave_port=;;"` ;; + --record) + RECORD=1; + EXTRA_MYSQL_TEST_OPT="$EXTRA_MYSQL_TEST_OPT $1" ;; + --sleep=*) + EXTRA_MYSQL_TEST_OPT="$EXTRA_MYSQL_TEST_OPT $1" + SLEEP_TIME=`$ECHO "$1" | $SED -e "s;--sleep=;;"` + ;; + --gcov ) + if [ x$BINARY_DIST = x1 ] ; then + $ECHO "Cannot do coverage test without the source - please use source dist" + exit 1 + fi + DO_GCOV=1 + ;; + --gdb ) + if [ x$BINARY_DIST = x1 ] ; then + $ECHO "Note: you will get more meaningful output on a source distribution compiled with debugging option when running tests with -gdb option" + fi + DO_GDB=1 + ;; + --ddd ) + if [ x$BINARY_DIST = x1 ] ; then + $ECHO "Note: you will get more meaningful output on a source distribution compiled with debugging option when running tests with -gdb option" + fi + DO_DDD=1 + ;; + --debug) + EXTRA_MASTER_MYSQLD_OPT=--debug=d:t:O,$MYSQL_TMP_DIR/master.trace + EXTRA_SLAVE_MYSQLD_OPT=--debug=d:t:O,$MYSQL_TMP_DIR/slave.trace + ;; + -- ) shift; break ;; + --* ) $ECHO "Unrecognized option: $1"; exit 1 ;; + * ) break ;; + esac + shift +done #++ # mysqld Environment Parameters #-- + MYRUN_DIR=$MYSQL_TEST_DIR/var/run -MASTER_MYPORT=9306 MASTER_MYDDIR="$MYSQL_TEST_DIR/var/lib" -MASTER_MYSOCK="$MYSQL_TMP_DIR/mysql.sock" +MASTER_MYSOCK="$MYSQL_TMP_DIR/mysql-master.sock" MASTER_MYPID="$MYRUN_DIR/mysqld.pid" MASTER_MYLOG="$MYSQL_TEST_DIR/var/log/mysqld.log" MASTER_MYERR="$MYSQL_TEST_DIR/var/log/mysqld.err" -SLAVE_MYPORT=9307 SLAVE_MYDDIR="$MYSQL_TEST_DIR/var/slave-data" SLAVE_MYSOCK="$MYSQL_TMP_DIR/mysql-slave.sock" SLAVE_MYPID="$MYRUN_DIR/mysqld-slave.pid" @@ -145,59 +195,16 @@ else INSTALL_DB="./install_test_db -bin" fi - -SLAVE_MYSQLD=$MYSQLD #this will be changed later if we are doing gcov - -MYSQL_TEST="$MYSQL_TEST --no-defaults --socket=$MASTER_MYSOCK --database=$DB --user=$DBUSER --password=$DBPASSWD --silent -v" -GDB_MASTER_INIT=$MYSQL_TMP_DIR/gdbinit.master -GDB_SLAVE_INIT=$MYSQL_TMP_DIR/gdbinit.slave - -USE_RUNNING_SERVER=1 -DO_GCOV="" -DO_GDB="" -DO_DDD="" - -while test $# -gt 0; do - case "$1" in - --force ) FORCE=1 ;; - --record ) RECORD=1 ;; - --local) USE_RUNNING_SERVER="" ;; - --gcov ) - if [ x$BINARY_DIST = x1 ] ; then - $ECHO "Cannot do coverage test without the source - please use source dist" - exit 1 - fi - DO_GCOV=1 - ;; - --gdb ) - if [ x$BINARY_DIST = x1 ] ; then - $ECHO "Note: you will get more meaningful output on a source distribution compiled with debugging option when running tests with -gdb option" - fi - DO_GDB=1 - ;; - --ddd ) - if [ x$BINARY_DIST = x1 ] ; then - $ECHO "Note: you will get more meaningful output on a source distribution compiled with debugging option when running tests with -gdb option" - fi - DO_DDD=1 - ;; - --debug) - EXTRA_MASTER_MYSQLD_OPT=--debug=d:t:O,$MYSQL_TMP_DIR/master.trace - EXTRA_SLAVE_MYSQLD_OPT=--debug=d:t:O,$MYSQL_TMP_DIR/slave.trace - ;; - -- ) shift; break ;; - --* ) $ECHO "Unrecognized option: $1"; exit 1 ;; - * ) break ;; - esac - shift -done - # If we should run all tests cases, we will use a local server for that if [ -z "$1" ] then USE_RUNNING_SERVER="" fi +if [ -n "$USE_RUNNING_SERVER" ] +then + MASTER_MYSOCK="/tmp/mysql.sock" +fi if [ -w / ] then @@ -206,6 +213,15 @@ then EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --user=root" fi + +MYSQL_TEST="$MYSQL_TEST --no-defaults --socket=$MASTER_MYSOCK --database=$DB --user=$DBUSER --password=$DBPASSWD --silent -v --tmpdir=$MYSQL_TMP_DIR" +GDB_MASTER_INIT=$MYSQL_TMP_DIR/gdbinit.master +GDB_SLAVE_INIT=$MYSQL_TMP_DIR/gdbinit.slave +GCOV_MSG=$MYSQL_TMP_DIR/mysqld-gcov.out +GCOV_ERR=$MYSQL_TMP_DIR/mysqld-gcov.err +TIMEFILE="$MYSQL_TMP_DIR/mysqltest-time" +SLAVE_MYSQLD=$MYSQLD #this can be changed later if we are doing gcov + #++ # Function Definitions #-- @@ -223,7 +239,7 @@ error () { } error_is () { - $ECHO `$CAT $TIMEFILE` | $SED -e 's/.* At line \(.*\)\: \(.*\)Command .*$/ \>\> Error at line \1: \2<\</' + $TR "\n" " " < $TIMEFILE | $SED -e 's/.* At line \(.*\)\: \(.*\)Command .*$/ \>\> Error at line \1: \2<\</' } prefix_to_8() { @@ -316,6 +332,7 @@ start_master() --socket=$MASTER_MYSOCK \ --log=$MASTER_MYLOG --default-character-set=latin1 \ --core \ + --tmpdir=$MYSQL_TMP_DIR \ --language=english $EXTRA_MASTER_OPT $EXTRA_MASTER_MYSQLD_OPT" if [ x$DO_DDD = x1 ] then @@ -358,11 +375,12 @@ start_slave() --socket=$SLAVE_MYSOCK \ --log=$SLAVE_MYLOG --default-character-set=latin1 \ --core \ + --tmpdir=$MYSQL_TMP_DIR \ --language=english $EXTRA_SLAVE_OPT $EXTRA_SLAVE_MYSQLD_OPT" if [ x$DO_DDD = x1 ] then $ECHO "set args $master_args" > $GDB_SLAVE_INIT - ddd --debugger "gdb -x $GDB_SLAVE_INIT" $MYSQLD & + ddd --debugger "gdb -x $GDB_SLAVE_INIT" $SLAVE_MYSQLD & prompt_user "Hit enter to continue after you've started the master" elif [ x$DO_GDB = x1 ] then @@ -380,6 +398,7 @@ mysql_start () { start_master start_slave cd $MYSQL_TEST_DIR + sleep $SLEEP_TIME # Give mysqld time to start properly return 1 } @@ -392,7 +411,7 @@ stop_slave () then # try harder! $ECHO "slave not cooperating with mysqladmin, will try manual kill" kill `$CAT $SLAVE_MYPID` - sleep 2 + sleep $SLEEP_TIME if [ -f $SLAVE_MYPID ] ; then $ECHO "slave refused to die, resorting to SIGKILL murder" kill -9 `$CAT $SLAVE_MYPID` @@ -402,7 +421,7 @@ stop_slave () fi fi SLAVE_RUNNING=0 - sleep 2 # Give mysqld time to go down properly + sleep $SLEEP_TIME # Give mysqld time to go down properly fi } @@ -415,7 +434,7 @@ stop_master () then # try harder! $ECHO "master not cooperating with mysqladmin, will try manual kill" kill `$CAT $MASTER_MYPID` - sleep 2 + sleep $SLEEP_TIME if [ -f $MASTER_MYPID ] ; then $ECHO "master refused to die, resorting to SIGKILL murder" kill -9 `$CAT $MASTER_MYPID` @@ -425,7 +444,7 @@ stop_master () fi fi MASTER_RUNNING=0 - sleep 2 # Give mysqld time to go down properly + sleep $SLEEP_TIME # Give mysqld time to go down properly fi } @@ -461,11 +480,6 @@ run_testcase () slave_opt_file=$TESTDIR/$tname-slave.opt slave_master_info_file=$TESTDIR/$tname-slave-master-info.opt SKIP_SLAVE=`$EXPR \( $tname : rpl \) = 0` - if [ x$RECORD = x1 ]; then - extra_flags="-r" - else - extra_flags="" - fi if [ -f $master_opt_file ] ; then @@ -514,18 +528,18 @@ run_testcase () if [ -f $tf ] ; then $RM -f r/$tname.*reject - mytime=`$TIME -p $MYSQL_TEST -R r/$tname.result $extra_flags \ + mytime=`$TIME -p $MYSQL_TEST -R r/$tname.result $EXTRA_MYSQL_TEST_OPT \ < $tf 2> $TIMEFILE` res=$? if [ $res = 0 ]; then - mytime=`$CAT $TIMEFILE | $TAIL -3 | $TR '\n' '-'` + mytime=`$CAT $TIMEFILE | $TAIL -3 | $TR '\n' ':'` - USERT=`$ECHO $mytime | $CUT -d - -f 2 | $CUT -d ' ' -f 2` + USERT=`$ECHO $mytime | $CUT -d : -f 2 | $CUT -d ' ' -f 2` USERT=`prefix_to_8 $USERT` - SYST=`$ECHO $mytime | $CUT -d - -f 3 | $CUT -d ' ' -f 2` + SYST=`$ECHO $mytime | $CUT -d : -f 3 | $CUT -d ' ' -f 2` SYST=`prefix_to_8 $SYST` - REALT=`$ECHO $mytime | $CUT -d - -f 1 | $CUT -d ' ' -f 2` + REALT=`$ECHO $mytime | $CUT -d : -f 1 | $CUT -d ' ' -f 2` REALT=`prefix_to_8 $REALT` else USERT=" ...." @@ -533,21 +547,19 @@ run_testcase () REALT=" ...." fi - timestr="$USERT $SYST $REALT" - pname=`$ECHO "$tname "|$CUT -c 1-16` - $ECHO -n "$pname $timestr" - - + timestr="$USERT $SYST $REALT" + pname=`$ECHO "$tname "|$CUT -c 1-16` + RES="$pname $timestr" if [ $res = 0 ]; then total_inc pass_inc - $ECHO "$RES_SPACE [ pass ]" + $ECHO "$RES$RES_SPACE [ pass ]" else if [ $res = 1 ]; then total_inc fail_inc - $ECHO "$RES_SPACE [ fail ]" + $ECHO "$RES$RES_SPACE [ fail ]" $ECHO error_is $ECHO @@ -563,7 +575,7 @@ run_testcase () $ECHO "" else pass_inc - $ECHO "$RES_SPACE [ skipped ]" + $ECHO "$RES$RES_SPACE [ skipped ]" fi fi fi diff --git a/mysql-test/r/bigint.result b/mysql-test/r/bigint.result index 501f489ca86..08e21b279bc 100644 --- a/mysql-test/r/bigint.result +++ b/mysql-test/r/bigint.result @@ -1,9 +1,5 @@ 0 256 00000000000000065536 2147483647 -2147483648 2147483648 +4294967296 0 256 65536 2147483647 -2147483648 2147483648 4294967296 -922337203685477580 92233720368547758000 -922337203685477580 92233720368547758080 --922337203685477580 -92233720368547758000 --922337203685477580 -92233720368547758080 9223372036854775807 -009223372036854775808 9223372036854775807 -9223372036854775808 +9999999999999999999 -9999999999999999999 diff --git a/mysql-test/r/have_default_master.require b/mysql-test/r/have_default_master.require new file mode 100644 index 00000000000..ca8342ffb08 --- /dev/null +++ b/mysql-test/r/have_default_master.require @@ -0,0 +1,2 @@ +Variable_name Value +port 9306 diff --git a/mysql-test/t/bigint.test b/mysql-test/t/bigint.test index 91997c811b5..9a819463f3f 100644 --- a/mysql-test/t/bigint.test +++ b/mysql-test/t/bigint.test @@ -2,8 +2,6 @@ # Test of reading of bigint values # select 0,256,00000000000000065536,2147483647,-2147483648,2147483648,+4294967296; -select 922337203685477580,92233720368547758000; -select -922337203685477580,-92233720368547758000; select 9223372036854775807,-009223372036854775808; select +9999999999999999999,-9999999999999999999; diff --git a/mysql-test/t/rpl000008.test b/mysql-test/t/rpl000008.test index 58a00b4ffbb..d17190ef31d 100644 --- a/mysql-test/t/rpl000008.test +++ b/mysql-test/t/rpl000008.test @@ -18,7 +18,7 @@ drop table if exists choo; create table choo (k int); insert into choo values(55); connection slave; -sleep 2; +sleep 3; @r/rpl000008.result select foo.n,bar.m,choo.k from foo,bar,choo; connection master; drop table if exists foo,bar,choo; diff --git a/mysql-test/t/rpl000012.test b/mysql-test/t/rpl000012.test index 8a231c3f04d..d4b40a48386 100644 --- a/mysql-test/t/rpl000012.test +++ b/mysql-test/t/rpl000012.test @@ -21,6 +21,6 @@ sleep 1; # # Clean up # -connect (master2,localhost,root,,test,0,var/tmp/mysql.sock); +connect (master2,localhost,root,,test,0,mysql-master.sock); connection master2; drop table if exists t1,t2; diff --git a/mysql-test/t/rpl000013.test b/mysql-test/t/rpl000013.test index ec9ca1ce8d2..4d4dc3f491a 100644 --- a/mysql-test/t/rpl000013.test +++ b/mysql-test/t/rpl000013.test @@ -27,6 +27,6 @@ while ($1) # # Clean up # -connect (master2,localhost,root,,test,0,var/tmp/mysql.sock); +connect (master2,localhost,root,,test,0,mysql-master.sock); connection master2; drop table if exists t1,t2; diff --git a/mysql-test/t/rpl000014.test b/mysql-test/t/rpl000014.test index 3ab5360d82d..1a2ce014813 100644 --- a/mysql-test/t/rpl000014.test +++ b/mysql-test/t/rpl000014.test @@ -1,4 +1,5 @@ source include/master-slave.inc; +source include/have_default_master.inc; connection master; show master status; connection slave; diff --git a/mysql-test/t/rpl000015.test b/mysql-test/t/rpl000015.test index dda1b528e10..a2528aa9b42 100644 --- a/mysql-test/t/rpl000015.test +++ b/mysql-test/t/rpl000015.test @@ -1,5 +1,6 @@ -connect (master,localhost,root,,test,0,var/tmp/mysql.sock); -connect (slave,localhost,root,,test,0,var/tmp/mysql-slave.sock); +connect (master,localhost,root,,test,0,mysql-master.sock); +connect (slave,localhost,root,,test,0, mysql-slave.sock); +source include/have_default_master.inc; connection master; reset master; show master status; diff --git a/mysql-test/t/rpl000016.test b/mysql-test/t/rpl000016.test index 5704bfeaf66..2ee68cd230f 100644 --- a/mysql-test/t/rpl000016.test +++ b/mysql-test/t/rpl000016.test @@ -1,5 +1,6 @@ -connect (master,localhost,root,,test,0,var/tmp/mysql.sock); -connect (slave,localhost,root,,test,0,var/tmp/mysql-slave.sock); +connect (master,localhost,root,,test,0,mysql-master.sock); +connect (slave,localhost,root,,test,0,mysql-slave.sock); +source include/have_default_master.inc; system cat /dev/null > var/slave-data/master.info; system chmod 000 var/slave-data/master.info; connection slave; |