Commit graph

543 commits

Author SHA1 Message Date
unknown
23e9415055 Add ATTRIBUTE_FORMAT specifier to _db_doprnt, which is used by DBUG_PRINT
This will hopefully avoiid annoying crashes when running with --debug
Fix warnings  from the above in mysqltest.c


client/mysqltest.c:
  Fix format specifier warnings in mysqltest.c
include/my_dbug.h:
  Add ATTRIBUTE_FORMAT specifier to _db_doprnt, which is used by DBUG_PRINT
  This will hopefully avoiid annoying crashes when running with --debug
2006-10-12 20:15:56 +02:00
unknown
7405e7792d Move the reconnect variable to beginning of function
Fix warning about value from "*ptr++" not being used. Changed it to ptr++
2006-10-12 13:50:50 +02:00
unknown
1f837a5c76 Only print cur_file->filename if cur_file->file is set
MOve DBUG_ASSERT(result_file_name) to after DBUG_ENTER
Change type of "reconnect" variable from int to my_bool, reconnect didn't work on Solaris without that
2006-10-12 10:49:59 +02:00
unknown
d6d4692372 Fixes for embedded server test
client/mysqltest.c:
  Fix typo
2006-10-11 21:53:43 +02:00
unknown
3caef95e64 Fix some bad code in mysqltest.c which cause segfault
client/mysqltest.c:
  Remove vsnprintf() and DBUG_PRINT from die() function, as it's not portable to Windows, and it's not allowed to
  call vsnprintf() and then vfprintf() with the same args.
  Can't just print the buffer here, because the buffer is a fixed size.
  If the message is longer than will fit int he buffer, it would get
  truncated on Unix, and the full thing would be printed on Windows.
  This DBUG_PRINT isn't important enough for this hassle, so just get rid
  of it.
2006-10-11 11:21:44 +02:00
unknown
3651933d09 vsnprintf is not available on win2003-x86 host, as this is just a debug functionality - disable it for now. 2006-10-08 16:19:23 +02:00
unknown
13da57d0f1 Init "saved_expected_errors" at program start, avoids crash where --error is first command
strcmp -> strncmp
2006-10-07 20:14:21 +02:00
unknown
4f7097035f Add comment and remove strange assignment in 'do_exec' 2006-10-07 19:47:42 +02:00
unknown
40e44f0e56 Two implementations of "get_err_code_from_name", one use if mysqld_ername.h is available and oe if it's not
Declare "to_ptr" first in block
2006-10-07 19:09:40 +02:00
unknown
78c5bc62c5 Add printout of file in which warning was detected
Cleanup .progress, .reject, .log and .warnings files produced by mysqltest


client/mysqltest.c:
  Add printout of file in which warning was detected
mysql-test/include/ctype_like_escape.inc:
  Remove warnings, convert -- comments to # comments
mysql-test/mysql-test-run.pl:
  Cleanup all files produced by mysqltest before starting mysqltest again
2006-10-06 00:57:10 +02:00
unknown
93a9883bed Add policy directive about keeping mysqltest framework tools identical in all versions
mysql-test/mysql-test-run.pl:
  Add policy directive about keeping mysqltest framework tools identical in all versions
  Cleanup the initial comment to reflect current state
2006-10-05 22:05:42 +02:00
unknown
6d89bcbcff Bug #20010 mysql-test-run.pl: --record and --require conflict (test fails)
- When --record is passed to mysqltest the whole testcase should be executed
as it normally is while the output form the test is acumulating
in ds_res. When test has finished ds_res should simply be written to the
specified result file(if any) instead of comapring it against the result file.
Simplify handling of --require and also the cecking of result files by splitting
check_result function into one  function 'check_require' that is specialised in
checking require's and leave 'check_result' to do just that.
- "mysqltest --record" has been considered unsafe, but with this really simple
logic, it should be safe to use.


client/mysqltest.c:
  When --record is passed to mysqltest the whole testcase should be executed
  as it normally is while the output form the test is acumulating
  in ds_res. When test has finished ds_res should simply be written to the
  specified result file(if any) instead of comapring it against the result file.
  Simplify handling of --require and also the cecking of result files by splitting
  check_result function into one  function 'check_require' that is specialised in
  checking require's and leave 'check_result' to do just that.
2006-10-05 18:00:20 +02:00
unknown
4c8931294b Improve "check_eol_junk" to detect junk although there are multi line comments in the way.
I.e take advantage of the fact that a # comment is always terminated by a new line 
Add tests for the above


client/mysqltest.c:
  Improve "check_eol_junk" to detect junk although there are multi line comments in the way.
  I.e take advantage of the fact that a # comment is always terminated by a new line
mysql-test/r/mysqltest.result:
  Update resut file
mysql-test/t/mysqltest.test:
  Add test for improved check_eol_junk
2006-10-05 12:25:24 +02:00
unknown
93c0cddbd4 Update "get_errcode_from_name"
- add missing DBUG_RETURN
 - Change type of st_error->code to uint, that should be more than enough
   to hold the error numbers between 1000 and around 2000
2006-10-04 23:34:05 +02:00
unknown
99cfe38ae7 Don't print version in error message, just too messy to test 2006-10-04 12:27:05 +02:00
unknown
528b7ef9a6 Add possibility to send warnings about suspicious commands in .test file to <result_file_name>.warnings file
Move detection of "parsing enabled" to after command has been read.
Cleanup parsing enabled/disabled
2006-10-04 01:20:08 +02:00
unknown
14c2d19558 Fix problem when both option SSL and COMPRESS specified 2006-10-03 23:11:47 +02:00
unknown
807b9f9437 Fix typo
- Change con_host to ds_connection_name.str


client/mysqltest.c:
  Change con_host to ds_connection_name.str
2006-10-03 16:34:44 +02:00
unknown
9368c7bcd8 Update mysqltest to latest version
- ie. backport from 5.1
 - also update testcase error dected by new version


mysql-test/include/show_msg.inc:
  BitKeeper file /home/msvensson/mysql/same_tools/my41-same_tools/mysql-test/include/show_msg.inc
mysql-test/include/show_msg80.inc:
  BitKeeper file /home/msvensson/mysql/same_tools/my41-same_tools/mysql-test/include/show_msg80.inc
BitKeeper/deleted/.del-rpl_chain_temp_table.test:
  Delete: mysql-test/t/rpl_chain_temp_table.test
BitKeeper/deleted/.del-rpl_chain_temp_table.result:
  Delete: mysql-test/r/rpl_chain_temp_table.result
BitKeeper/deleted/.del-rpl_failsafe.result:
  Delete: mysql-test/r/rpl_failsafe.result
BitKeeper/deleted/.del-rpl_failsafe.test:
  Delete: mysql-test/t/rpl_failsafe.test
BitKeeper/deleted/.del-rpl_heap.test:
  Delete: mysql-test/t/rpl_heap.test
BitKeeper/deleted/.del-rpl_heap.result:
  Delete: mysql-test/r/rpl_heap.result
BitKeeper/deleted/.del-rpl000018.result:
  Delete: mysql-test/r/rpl000018.result
BitKeeper/deleted/.del-rpl000018.test:
  Delete: mysql-test/t/rpl000018.test
client/Makefile.am:
  Link mysqltest with mysys/my_copy.c
client/mysqltest.c:
  Update mysqltest to latest version
mysql-test/include/have_multi_ndb.inc:
  Remove old syntax "@filename" in favor of "--require filename"
mysql-test/include/master-slave.inc:
  Remove old syntax "@filename" in favor of "--require filename"
mysql-test/include/ps_query.inc:
  Remove the comment about no output now when it does.
mysql-test/r/check.result:
  Update output from --send
mysql-test/r/connect.result:
  Update result file for connect test after backport form 5.1
mysql-test/r/flush.result:
  Update output from --send
mysql-test/r/flush_block_commit.result:
  Update output from --send
mysql-test/r/func_misc.result:
  Update output from --send
mysql-test/r/grant2.result:
  Update output from --send
mysql-test/r/handler.result:
  Update output from --send
mysql-test/r/kill.result:
  Update output from --send
mysql-test/r/lock_multi.result:
  Update output from --send
mysql-test/r/mix_innodb_myisam_binlog.result:
  Update output from --send
mysql-test/r/mysqltest.result:
  Update mysqltest.result after backport
mysql-test/r/ps_2myisam.result:
  Update result as the output from query is now printed
mysql-test/r/ps_3innodb.result:
  Update result as the output from query is now printed
mysql-test/r/ps_4heap.result:
  Update result as the output from query is now printed
mysql-test/r/ps_5merge.result:
  Update result as the output from query is now printed
mysql-test/r/ps_6bdb.result:
  Update result as the output from query is now printed
mysql-test/r/ps_7ndb.result:
  Update result as the output from query is now printed
mysql-test/r/rename.result:
  Update output from --send
mysql-test/r/rpl000001.result:
  Update output from --send
mysql-test/r/rpl_error_ignored_table.result:
  Update output from --send
mysql-test/r/rpl_master_pos_wait.result:
  Update output from --send
mysql-test/r/subselect.result:
  Update result file after adding missing ;
mysql-test/r/synchronization.result:
  Update output from --send
mysql-test/r/type_blob.result:
  Update result file after adding missing ;
mysql-test/t/connect.test:
  Backport test from 5.1
mysql-test/t/init_file.test:
  Update test so something is printed
mysql-test/t/mysql_client_test.test:
  Update test so result is sent to file and something is printed
mysql-test/t/mysqltest.test:
  Backport latest mysqltest.test file
mysql-test/t/ps.test:
  Move the --replace_column statement to just before the statetement it should replace
mysql-test/t/ps_1general.test:
  Move the --replace_column statement to just before the statetement it should replace
mysql-test/t/ps_grant.test:
  Remove the $DB, no other test uses it
mysql-test/t/rpl_flush_tables.test:
  Fetch $SERVER_VERSION from the db server
mysql-test/t/rpl_trunc_temp.test:
  Remove the selection of connection master after it's been disconnected already
mysql-test/t/subselect.test:
  Add missing ;
mysql-test/t/type_blob.test:
  Add missing ;
2006-10-03 15:33:44 +02:00
unknown
216464293b Additional patch to Bug#21476: Free newly-allocated memory in mysqltest.
client/mysqltest.c:
  Free the dynstr.
2006-09-28 09:51:06 -04:00
unknown
7f221a1837 Bug#21476: (Thread stack overrun not caught, causing SEGV)
The STACK_MIN_SIZE is currently set to 8192, when we actually need 
(emperically discovered) 9236 bytes to raise an fatal error, on Ubuntu 
Dapper Drake, libc6 2.3.6-0ubuntu2, Linux kernel 2.6.15-27-686, on x86.

I'm taking that as a new lower bound, plus 100B of wiggle-room for sundry
word sizes and stack behaviors.

The added test verifies in a cross-platform way that there are no gaps 
between the space that we think we need and what we actually need to report 
an error.

DOCUMENTERS:  This also adds "let" to the mysqltest commands that evaluate
an argument to expand variables therein.  (Only right of the "=", of course.)


client/mysqltest.c:
  Add "let" to the list of mysqltest commands that evaluates its arguments (only
  the right-hand-side of the equals-sign expression).
mysql-test/r/mysqltest.result:
  Added test to show that mysqltest "let" will evaluate the RHS correctly (and 
  expand the backslash test).
mysql-test/t/mysqltest.test:
  Added test to show that mysqltest "let" will evaluate the RHS correctly (and 
  expand the backslash test).
sql/mysql_priv.h:
  Increase the amount we require to be available for the stack, since 
  experience told us that the previous amount was too little by at least
  1044 bytes.
mysql-test/r/execution_constants.result:
  New BitKeeper file ``mysql-test/r/execution_constants.result''
mysql-test/t/execution_constants.test:
  New BitKeeper file ``mysql-test/t/execution_constants.test''
2006-09-27 14:42:56 -04:00
unknown
032baf1f56 Remove duplicate free of "ds_res" 2006-08-16 20:38:33 +02:00
unknown
f8497a1624 Merge 192.168.0.20:mysql/bug21217/my50-bug21217
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint


client/mysqltest.c:
  Auto merged
2006-07-31 14:42:06 +02:00
unknown
3709da1ab7 Merge shellback.(none):/home/msvensson/mysql/bug21217/my41-bug21217
into  shellback.(none):/home/msvensson/mysql/bug21217/my50-bug21217


client/mysqltest.c:
  Manual merge 4.1->5.0
2006-07-30 19:33:48 +02:00
unknown
83c87624fa BUG#21217 "mysqltest" client is inconsistent when to log a line number
- Init start_lineno to 0


client/mysqltest.c:
  Init start_lineno to 0 and set it back to zero before comparing result file.
2006-07-30 19:30:20 +02:00
unknown
b03b6c868e Bug#19890 mysqltest: "query" command is broken
- Allow "query" to be used as a prefix for focing a command to be sent to server
 - Add testcases


client/mysqltest.c:
  To force something being sent as a query to the mysqld one can
  use the prefix "query". Remove "query" from string before executing.
mysql-test/r/mysqltest.result:
  Add test case for "query" command
mysql-test/t/mysqltest.test:
  Add test case for "query" command
2006-07-26 14:02:24 +02:00
unknown
3ebe4455c2 Bug#20022 mysql-test-run can't be run with secure connections turned on for all testcases
- Part 1, fixes rpl- and federated-tests where connection is made to 127.0.0.1


client/mysqltest.c:
  Turn on ssl_verify_server_cert only if host is "localhost"
2006-05-31 16:28:03 +02:00
unknown
0d3825a67e Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint


client/mysqltest.c:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
sql/mysql_priv.h:
  Auto merged
2006-05-09 08:26:25 +02:00
unknown
184ae8820e Move "max-connect-retries" option to get alpabetichal order 2006-05-03 15:53:59 +02:00
unknown
9d1c19c7b0 Add support for specifyihng the number of reconnec retries oin the command line 2006-05-03 14:04:54 +02:00
unknown
4f9100b67c Bug #18312: mysqltest: --sleep=0 doesn't disable sleep
Allow --sleep=0 to be specified to mysqltest, so that sleep calls
  can be disabled.

  Original patch from Paul DuBois.


client/mysqltest.c:
  Handle --sleep=0 being specified.
2006-04-21 10:48:53 -07:00
unknown
c1d64ccc1b Bug#17208 SSL: client does not verify server certificate
- Add new function 'ssl_verify_server_cert' which is used if we are 
   connecting to the server with SSL. It will compare the hostname in 
   the server's cert against the hostname that we used when connecting 
   to the server. Will reject the connection if hostname does not match.
 - Add new option "OPT_SSL_VERIFY_SERVER_CERT" to be passed to mysql_options
   which will turn on checking of servers cert.
 - Add new argument "ssl-verify-server-cert" to all mysql* clients which 
   will activate the above option.
 - Generate a new server cert with 1024 bits that has "localhost" as the server name.


SSL/server-cert.pem:
  Generate a new server cert that has "localhost" as CN, so that we can test to verify the hostname we connected against with the hostname in the cert
client/client_priv.h:
  Add OPT_SSL_VERIFY_CERT
client/mysql.cc:
  Pass the variable "opt_ssl_verify_server_cert" to the mysql_options function. It's processed/included by include/sslopt*.h files
client/mysqladmin.cc:
  Pass the variable "opt_ssl_verify_server_cert" to the mysql_options function. It's processed/included by include/sslopt*.h files
client/mysqldump.c:
  Pass the variable "opt_ssl_verify_server_cert" to the mysql_options function. It's processed/included by include/sslopt*.h files
client/mysqlimport.c:
  Pass the variable "opt_ssl_verify_server_cert" to the mysql_options function. It's processed/included by include/sslopt*.h files
client/mysqlshow.c:
  Pass the variable "opt_ssl_verify_server_cert" to the mysql_options function. It's processed/included by include/sslopt*.h files
client/mysqltest.c:
  Always set opt_ssl_verify_server_cert on in mysqltest if we are using SSL
include/mysql.h:
  Add variable ssl_verify_cerver_cert
include/sslopt-longopts.h:
  Add ssl-verify-server-cert options to all clients.
include/sslopt-vars.h:
  Add opt_ssl_varify_server_cert to all clients.
sql-common/client.c:
  Add ssl_vertify_server_cert function which is executed if user has set the option ssl_verify_cerver_cert
vio/viosslfactories.c:
  Ask the SSL library to verify servers cert by setting the SSL_VERIFY_PEER flag
2006-04-18 17:58:27 +02:00
unknown
6a1ec62660 Remove #if 0 2006-04-07 14:21:00 +02:00
unknown
224b63e378 Incorporate a patch to write a timestamp for every new line of the test that is executed.
This makes it possible make a graph (with for example gnuplot) of a test run and spot where most time is consumed.
Add the new code inside an "#if 0" until it's portable. 


client/mysqltest.c:
  Incorporate a patch to write a timestamp for every new line of the test that is executed.
  This makes it possible make a graph (with for example gnuplot) of a test run and spot where most time is consumed.
2006-04-05 11:47:12 +02:00
unknown
636064c0ba Dump result to .log file at test failure
client/mysqltest.c:
  Dump accumulated result upuntil test failure into a <testname>.log file for later examination
mysql-test/lib/mtr_report.pl:
  Inform about the <testname>.log file's existence
2006-03-23 21:48:31 +01:00
unknown
52c4dbd88b Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  shellback.(none):/home/msvensson/mysql/mysql-5.0


client/mysqltest.c:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
2006-03-23 18:58:53 +01:00
unknown
de9b35ece0 Update after merge, function renamed 2006-03-23 16:21:20 +01:00
unknown
fe621bb5aa Merge shellback.(none):/home/msvensson/mysql/mysqltestrun_pl/my50-mysqltestrun_pl
into  shellback.(none):/home/msvensson/mysql/mysql-5.0


client/mysqltest.c:
  Auto merged
mysql-test/mysql-test-run.pl:
  Merge
2006-03-23 15:30:21 +01:00
unknown
685ca4d748 Dump reject file before mysqltest in 'die'
Makes it easier to see what happened before the failure


client/mysqltest.c:
  Dump reject file before mysqltest in 'die'
2006-03-23 15:04:46 +01:00
unknown
6219f23b94 Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/bug11835/my50-bug11835


client/mysqltest.c:
  Auto merged
configure.in:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/sql_udf.cc:
  Auto merged
2006-03-20 21:35:05 +01:00
unknown
f53afa23e6 Improve mysqltest
Add comment's for enable/disable_query_log and enable/disable_result_log
Update comment for "check_result"
Add check in "handle_error" that detects if the server crashed when running a "require" query to check if a certain feature is available


client/mysqltest.c:
  Add comment's for enable/disable_query_log and enable/disable_result_log
  Update comment for "check_result"
  Add check in "handle_error" that detects if the server crashed when running a "require" query to check if a certain feature is available
2006-03-10 12:08:53 +01:00
unknown
f4c81a219a Fix missing call to init_tmp_sh_file
client/mysqltest.c:
  Add call to init_tmp_sh_file
2006-03-07 14:34:20 +01:00
unknown
07d36fb99a Enable ifdef for windows specific functions 2006-03-07 08:57:57 +01:00
unknown
60ee2bbecb Improve error message for faulty usage of "inc" and "dec"
client/mysqltest.c:
  Improve error messages for "inc" and "dec"
mysql-test/r/mysqltest.result:
  Update test result
2006-03-07 07:50:04 +01:00
unknown
01a35c19cb Fix typo
client/mysqltest.c:
  Fix typo, add extra "s"
2006-03-06 22:18:04 +01:00
unknown
187f89a443 Remove unused var
Reduce code


client/mysqltest.c:
  Remove the "cmd" variable in do_sleep, left unintentionaly after merge
  Implement the same elegeant solution to fund the command name in do_modify_ar
2006-03-06 22:08:34 +01:00
unknown
4a311f0a50 Win fixes
- Use tmp sh file both in system and popen 


client/mysqltest.c:
  Introduce common functions to handle unix emulation on windows using a temporary sh file.
  Use it both in my_popen and my_system.
mysql-test/r/mysqltest.result:
  Update test result
mysql-test/t/mysqltest.test:
  Fix "windows paths" in three places that doesn't automatically get fixed
  Uset the output file mysqltest.sql instead of con.sql as con is not an allowed filename on Windows
  Use system for util functions
2006-03-06 22:05:39 +01:00
unknown
9281bdd47c Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0


client/mysqltest.c:
  SCCS merged
2006-03-06 12:00:51 +01:00
unknown
91b3447c2d Merge snake-hub.snake.net:/src/extern/MySQL/bk/mysql-4.1-clone
into  snake-hub.snake.net:/src/extern/MySQL/bk/mysql-5.0-clone


client/mysqltest.c:
  Auto merged
2006-03-03 14:37:43 -06:00
unknown
d8af174ae3 mysqltest.c:
Typos.


client/mysqltest.c:
  Typos.
2006-03-03 14:34:30 -06:00