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
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
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.
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
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
- 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.
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
- 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
- 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 ;
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''
- 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
- 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"
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
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.
- 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
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.
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
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
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
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
- 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