UNIX sockets need to be on a path shorter than 70 characters on some older platofrms.
MTRv1 tries to fix this by moving the socket to the $TMPDIR, however this causes
issues with certain tests on Windows.
Fixed by not applying any hacks on Windows - Windows does not need them.
When the thread executing a DDL was killed after finished its
execution but before writing the binlog event, the error code in
the binlog event could be set wrongly to ER_SERVER_SHUTDOWN or
ER_QUERY_INTERRUPTED.
This patch fixed the problem by ignoring the kill status when
constructing the event for DDL statements.
This patch also included the following changes in order to
provide the test case.
1) modified mysqltest to support variable for connection command
2) modified mysql-test-run.pl, add new variable MYSQL_SLAVE to
run mysql client against the slave mysqld.
mysql-test-run.pl --start-and-exit starts but does not exit
Instead, it hangs with ActiveState perl. The error is
believed to be a bug in ActiveState implementation.
Workaround is using POSIX::_exit, as described here
http://www.perlmonks.org/?node_id=334610
Thanks to Philip Stoev for the idea of the patch.
- Backport to 5.0, use --local-load to instruct myqlbinlog where to
put the files it generate
mysql-test/mysql-test-run.pl:
Make mysqlbinlog use the designated tmpdir for it's LOAD DATA files
client/mysql_upgrade.c:
Add --tmpdir option to mysql_upgrade and use it when creating temporary files.
mysql-test/mysql-test-run.pl:
Pass --tmpdir to mysql_upgrade
Bug#35335 funcs_1: Some tests fail within load_file during
pushbuild runs
Solution: 1. Move files with input data used in load_file,
load data etc.
from suite/funcs_1/<whatever>
to std_data
2. Use for testsuite funcs_1 the server option
--secure-file-priv=<MYSQLTEST_VARDIR>
3. Outfiles have to be stored under MYSQLTEST_VARDIR
+ changes according to WL#4304 Cleanup in funcs_1 tests
- backport of fixes/improvements made in 5.1 to 5.0
The differences between scripts in 5.0 and 5.1 cause
much additional and annoying work during any upmerge.
- replace error numbers with names
- improved comments
- improved formatting
- Unify storage engine names so that result files for
storage engine variants do not differ (some tests)
- remove a script no more used (tests are done in other scripts)
BitKeeper/deleted/.del-triggers_master.test:
Delete: mysql-test/suite/funcs_1/triggers/triggers_master.test
mysql-test/std_data/funcs_1/innodb_tb1.txt:
Rename: mysql-test/suite/funcs_1/data/innodb_tb1.txt -> mysql-test/std_data/funcs_1/innodb_tb1.txt
mysql-test/std_data/funcs_1/innodb_tb2.txt:
Rename: mysql-test/suite/funcs_1/data/innodb_tb2.txt -> mysql-test/std_data/funcs_1/innodb_tb2.txt
mysql-test/std_data/funcs_1/innodb_tb3.txt:
Rename: mysql-test/suite/funcs_1/data/innodb_tb3.txt -> mysql-test/std_data/funcs_1/innodb_tb3.txt
mysql-test/std_data/funcs_1/innodb_tb4.txt:
Rename: mysql-test/suite/funcs_1/data/innodb_tb4.txt -> mysql-test/std_data/funcs_1/innodb_tb4.txt
mysql-test/std_data/funcs_1/memory_tb1.txt:
Rename: mysql-test/suite/funcs_1/data/memory_tb1.txt -> mysql-test/std_data/funcs_1/memory_tb1.txt
mysql-test/std_data/funcs_1/memory_tb2.txt:
Rename: mysql-test/suite/funcs_1/data/memory_tb2.txt -> mysql-test/std_data/funcs_1/memory_tb2.txt
mysql-test/std_data/funcs_1/memory_tb3.txt:
Rename: mysql-test/suite/funcs_1/data/memory_tb3.txt -> mysql-test/std_data/funcs_1/memory_tb3.txt
mysql-test/std_data/funcs_1/memory_tb4.txt:
Rename: mysql-test/suite/funcs_1/data/memory_tb4.txt -> mysql-test/std_data/funcs_1/memory_tb4.txt
mysql-test/std_data/funcs_1/myisam_tb1.txt:
Rename: mysql-test/suite/funcs_1/data/myisam_tb1.txt -> mysql-test/std_data/funcs_1/myisam_tb1.txt
mysql-test/std_data/funcs_1/myisam_tb2.txt:
Rename: mysql-test/suite/funcs_1/data/myisam_tb2.txt -> mysql-test/std_data/funcs_1/myisam_tb2.txt
mysql-test/std_data/funcs_1/myisam_tb3.txt:
Rename: mysql-test/suite/funcs_1/data/myisam_tb3.txt -> mysql-test/std_data/funcs_1/myisam_tb3.txt
mysql-test/std_data/funcs_1/myisam_tb4.txt:
Rename: mysql-test/suite/funcs_1/data/myisam_tb4.txt -> mysql-test/std_data/funcs_1/myisam_tb4.txt
mysql-test/std_data/funcs_1/t3.txt:
Rename: mysql-test/suite/funcs_1/data/t3.txt -> mysql-test/std_data/funcs_1/t3.txt
mysql-test/std_data/funcs_1/t4.txt:
Rename: mysql-test/suite/funcs_1/data/t4.txt -> mysql-test/std_data/funcs_1/t4.txt
mysql-test/std_data/funcs_1/t7.txt:
Rename: mysql-test/suite/funcs_1/data/t7.txt -> mysql-test/std_data/funcs_1/t7.txt
mysql-test/std_data/funcs_1/t9.txt:
Rename: mysql-test/suite/funcs_1/data/t9.txt -> mysql-test/std_data/funcs_1/t9.txt
mysql-test/Makefile.am:
Introduce installation of funcs_1 files in std_data.
mysql-test/mysql-test-run.pl:
The tests within funcs_1 need a server started with
--secure-file-priv=<MYSQLTEST_VARDIR>
like the main regression tests.
mysql-test/suite/funcs_1/README.txt:
Extended description
mysql-test/suite/funcs_1/datadict/datadict_bug_12777.inc:
Cleanup
mysql-test/suite/funcs_1/datadict/datadict_load.inc:
Cleanup
mysql-test/suite/funcs_1/include/innodb_tb1.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/innodb_tb2.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/innodb_tb3.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/innodb_tb4.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/memory_tb1.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/memory_tb2.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/memory_tb3.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/memory_tb4.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/myisam_tb1.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/myisam_tb2.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/myisam_tb3.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/myisam_tb4.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/include/sp_tb.inc:
Adjustment to new storage place of infile.
mysql-test/suite/funcs_1/r/innodb_func_view.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_02.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_03.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_06.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_07.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_08.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_storedproc_10.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_trig_0102.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_trig_03.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_trig_0407.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_trig_08.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_trig_09.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_trig_1011ext.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_trig_frkey.result:
Updated results
mysql-test/suite/funcs_1/r/innodb_views.result:
Updated results
mysql-test/suite/funcs_1/r/is_columns_innodb.result:
Updated results
mysql-test/suite/funcs_1/r/is_columns_memory.result:
Updated results
mysql-test/suite/funcs_1/r/is_columns_myisam.result:
Updated results
mysql-test/suite/funcs_1/r/is_columns_ndb.result:
Updated results
mysql-test/suite/funcs_1/r/is_tables_innodb.result:
Updated results
mysql-test/suite/funcs_1/r/is_tables_memory.result:
Updated results
mysql-test/suite/funcs_1/r/is_tables_myisam.result:
Updated results
mysql-test/suite/funcs_1/r/is_tables_ndb.result:
Updated results
mysql-test/suite/funcs_1/r/memory_func_view.result:
Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_02.result:
Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_03.result:
Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_06.result:
Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_07.result:
Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_08.result:
Updated results
mysql-test/suite/funcs_1/r/memory_storedproc_10.result:
Updated results
mysql-test/suite/funcs_1/r/memory_trig_0102.result:
Updated results
mysql-test/suite/funcs_1/r/memory_trig_03.result:
Updated results
mysql-test/suite/funcs_1/r/memory_trig_0407.result:
Updated results
mysql-test/suite/funcs_1/r/memory_trig_08.result:
Updated results
mysql-test/suite/funcs_1/r/memory_trig_09.result:
Updated results
mysql-test/suite/funcs_1/r/memory_trig_1011ext.result:
Updated results
mysql-test/suite/funcs_1/r/memory_views.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_func_view.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_02.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_03.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_06.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_07.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_08.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_storedproc_10.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_trig_0102.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_trig_03.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_trig_0407.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_trig_08.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_trig_09.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_trig_1011ext.result:
Updated results
mysql-test/suite/funcs_1/r/myisam_views.result:
Updated results
mysql-test/suite/funcs_1/storedproc/cleanup_sp_tb.inc:
"--echo" instead of SQL command.
mysql-test/suite/funcs_1/storedproc/load_sp_tb.inc:
Adjustment to new storage place of infile
+ correct formatting.
mysql-test/suite/funcs_1/storedproc/storedproc_02.inc:
Backport from 5.1 + correct formatting.
mysql-test/suite/funcs_1/storedproc/storedproc_03.inc:
Minor improvements + correct formatting.
mysql-test/suite/funcs_1/storedproc/storedproc_06.inc:
Backport from 5.1 + correct formatting
mysql-test/suite/funcs_1/storedproc/storedproc_10.inc:
Backport from 5.1. + correct formatting
mysql-test/suite/funcs_1/t/innodb_trig_0407.test:
Cleanup
mysql-test/suite/funcs_1/t/is_basics_mixed.test:
Adjustment to new storage place of outfile.
mysql-test/suite/funcs_1/t/memory_storedproc_02.test:
Cleanup
mysql-test/suite/funcs_1/t/memory_storedproc_03.test:
Cleanup
mysql-test/suite/funcs_1/t/memory_storedproc_06.test:
Cleanup
mysql-test/suite/funcs_1/t/memory_storedproc_07.test:
Cleanup
mysql-test/suite/funcs_1/t/memory_storedproc_08.test:
Cleanup
mysql-test/suite/funcs_1/t/memory_storedproc_10.test:
Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_02.test:
Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_03.test:
Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_06.test:
Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_07.test:
Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_08.test:
Cleanup
mysql-test/suite/funcs_1/t/myisam_storedproc_10.test:
Cleanup
mysql-test/suite/funcs_1/triggers/trig_frkey2.inc:
Cleanup
mysql-test/suite/funcs_1/triggers/triggers_0102.inc:
Cleanup
mysql-test/suite/funcs_1/triggers/triggers_03.inc:
Backport from 5.1
mysql-test/suite/funcs_1/triggers/triggers_0407.inc:
Backport from 5.1
mysql-test/suite/funcs_1/triggers/triggers_08.inc:
Backport from 5.1
mysql-test/suite/funcs_1/triggers/triggers_09.inc:
Backport from 5.1
mysql-test/suite/funcs_1/triggers/triggers_1011ext.inc:
Backport from 5.1
mysql-test/suite/funcs_1/views/func_view.inc:
Backport from 5.1
mysql-test/suite/funcs_1/views/views_master.inc:
Cleanup
mysql-test/std_data/funcs_1/load_file.txt:
New BitKeeper file ``mysql-test/std_data/funcs_1/load_file.txt''
mysql-test/mysql-test-run.pl:
BUG#31880 make test failure from public bk tree
Instead of handling "MTR_BUILD_THREAD set" and "MTR_BUILD_THREAD not set" differently, use the same subroutine to set up the port numbers. The addition of a second master apparently broke the old static port numbers.
mysql-test/mysql-test-run.pl:
Add a way to remove options which mysql-test-run.pl no longer uses. Since
mysql-test-run.pl passes unrecognized options through to mysqld directly,
it is not possible to just remove an option. Otherwise it would be given
to mysqld, which probably will not recognize it and will fail to start.
Instead, we now explicitly ignore the option, and print a warning to
the user.
into ramayana.hindu.god:/home/tsmith/m/bk/maint/50
client/mysqldump.c:
Auto merged
include/my_sys.h:
Auto merged
libmysql/CMakeLists.txt:
Auto merged
libmysql/Makefile.shared:
Auto merged
myisam/ft_boolean_search.c:
Auto merged
myisam/sort.c:
Auto merged
mysql-test/t/cast.test:
Auto merged
mysql-test/t/variables.test:
Auto merged
sql/field.cc:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_table.cc:
Auto merged
mysql-test/mysql-test-run.pl:
Manual merge
mysql-test/r/ctype_ucs.result:
Manual merge
mysql-test/r/func_misc.result:
Manual merge
mysql-test/t/binlog_killed.test:
Manual merge
mysql-test/t/ctype_ucs.test:
Manual merge
mysql-test/t/func_misc.test:
Manual merge
sql/item_strfunc.h:
Manual merge
strings/ctype-simple.c:
Manual merge
into mysql.com:/home/svoj/devel/mysql/BUG31277/mysql-5.0-engines
myisam/mi_check.c:
Auto merged
myisam/mi_open.c:
Auto merged
myisam/mi_packrec.c:
Auto merged
myisam/myisamchk.c:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
sql/mysql_priv.h:
Auto merged
include/mysql_com.h:
Use local.
sql-common/client.c:
Use local.
With certain data sets (when compressed record length gets bigger than
uncompressed) myisamchk --unpack may corrupt data file.
Fixed that record length was wrongly restored from compressed table.
myisam/mi_check.c:
With compressed tables compressed record length may be bigger than
pack_reclength, thus we may allocate insufficient memory for record
buffer.
Let single function allocate record buffer, performing needed record
length calculations.
Still, it is not doable with parallel repair, as it allocates needed
record buffers at once. For parellel repair added better record length
calculation.
myisam/mi_open.c:
When calculating record buffer size, take into account that compressed
record length may be bigger than uncompressed.
myisam/mi_packrec.c:
With certain data set share->max_pack_length (compressed record length)
may be bigger than share->base.pack_reclength (packed record length).
set_if_bigger(pack_reclength, max_pack_length) in this case causes
myisamchk --unpack to write extra garbage, whereas pack_reclength
remains the same in new index file. As a result we get unreadable
table.
myisam/myisamchk.c:
With compressed tables compressed record length may be bigger than
pack_reclength, thus we may allocate insufficient memory for record
buffer.
Let single function allocate record buffer, performing needed record
length calculations.
mysql-test/mysql-test-run.pl:
Environment variables to execute myisamchk and myisampack.
mysql-test/r/myisampack.result:
New BitKeeper file ``mysql-test/r/myisampack.result''
mysql-test/t/myisampack.test:
New BitKeeper file ``mysql-test/t/myisampack.test''
mysql-test/mysql-test-run.pl:
Use an array to store the valgrind options
Deprecate --valgrind-options=s and instead use --valgrind-option(but allow
PushBuild's) --valgrind-options=s usage.
Make the variables local
mysql-test/lib/mtr_cases.pl:
Allow --skip-test and --do-test to take a perl regex
mysql-test/mysql-test-run.pl:
Update usage for --skip-test and --do-test
mysql-test/mysql-test-run.pl:
Just pass the $opt_valgrind_options to mtr_add_arg - it does a
"push(@$args, sprintf($format, @fargs));" behind the scenes
- "mysqld --verbose --help" need to be started in a writable directory
mysql-test/mysql-test-run.pl:
Create a tmpdir where mysqld can peform it's lowercase or uppercase test
were accidentally removed during a previous rototill of this
code. Fixes bug#27692.
While it can be argued we should strive to provide a 'secure by
default' installation, this happens to be the setup currently
documented in the manual as the default, so defer changes that
improve security out of the box to a co-ordinated effort later
on.
For now, make a note about the test databases and anonymous user
in mysql_install_db and recommend that mysql_secure_installation
be ran for users wishing to remove these defaults.
[..re-commit of previously lost change..]
scripts/mysql_system_tables_data.sql:
Add anonymous accounts.
scripts/mysql_install_db.sh:
Point users at the mysql_secure_installation script.
mysql-test/mysql-test-run.pl:
Add a comment where removing anonymous users.
mysql-test/lib/mtr_misc.pl:
Add function 'mtr_rmtree' it will try 'rmtree' and if that fails (most likely
due to permission problems we will fun File::find to chmod all files and dirs
to 0777 and then delete.
mysql-test/mysql-test-run.pl:
Use 'mtr_rmtree' in favour of 'rmtree'
to perform this analyzis)
client/mysqltest.c:
Add function 'show_query' and use it to output some debug queries when
"sync_with_master" has failed.
mysql-test/mysql-test-run.pl:
Move "analyze_testcase_failure" to mysqltest
Write test results to var/log
Add test for "source" and variable expansion
client/mysqltest.c:
Improve error messages
Write .reject file to the location specified by --logdir
mysql-test/mysql-test-run.pl:
Pass logdir to mysqltest, to get test results written to var/log
mysql-test/r/mysqltest.result:
Update test results
mysql-test/t/mysqltest.test:
Add test for "source" and variable expansion
Update test after writing result in var/log
Search "relwithdebinfo" directory in CMake Visual Studio build
Search for "mysqld-debug" even in source tree
mysql-test/mysql-test-run.pl:
Search "relwithdebinfo" directory in CMake Visual Studio build
Search for "mysqld-debug" even in source tree
- Move the code to generate test report to the test tool(in this
case mysqltest) where the best control of what failed is
- Simplify the code in mysql-test-run.pl
- mysqltest will now find what diff to use in a best effort attempt
using "diff -u", "diff -c" and finally dumping the two files verbatim
in the report.
client/mysqltest.c:
- Add new option --tail-lines indicating how many lines of the result to output
when generating report for a failure
- Remove eval_result, noone knows what it should do and it's not used.
- Add support for best effort execution of systems builtin "diff",
try with "diff -u" and "diff -c" and if that fails dump the whole content
of teh two files to report
- Use one common function when comapring two files, used when test
has completed and the result should be compared to the .result file
as well as using it from myqltest's builtin diff_files command.
- Output the last lines og the result so far in the report that mysqltest
generates in case of a test failure.
mysql-test/lib/mtr_report.pl:
- Remove code for generating diff between .reject and .result file,
that is handled by mysqltest(or the test tool) from now on.
- Add better comments
mysql-test/mysql-test-run.pl:
- Remove the --udiff flag to mysql-test-run.pl, if the systems diff supports
unified diff it will be used automatically
- Remove the code for "mtr_show_failed_diff", the report from mysqltest
will know include the diff so if mysqltest(or another test tool)
fails, just display it's report what went wrong
- Pass --tail-lines=20 to mysqltest to it will shos the last 20 lines
from the result in the report in case of failure.
mysql-test/r/mysqltest.result:
Update result file now when the output from mysqltest has been sent to /dev/null
mysql-test/t/mysqltest.test:
- Improve tests for --diff_files
- Remove temporary files in var/tmp generated in the fly
- Send output from test for --diff_files to /deb/null since only the error
code it returns are of interest and tyhe outpu may vary depending
on what builtin diff is being used.
of mysql-test-run.pl
mysql-test/lib/mtr_process.pl:
Change from "print" to "mtr_debug" to get messages logged to file as well
mysql-test/lib/mtr_report.pl:
- Add "mtr_log_init" function used for opening the log file
- Change from "print" to "mtr_report" to get the messages logged
- Make printout functions log to the log file
mysql-test/mysql-test-run.pl:
- Open the mysql-test-run log file as soon as var/log has been created
- Change from "print" to "mtr_report" to get the messgages to log as well