Bug#33812: mysql client incorrectly parsing DELIMITER
Remove unnecessary and incorrect code that tried
to pull delimiter commands out of the middle of
statements.
Another problem is that the backtrace facility wasn't being
enabled for non-Linux targets even if the target OS has the
backtrace functions. Also, the stacktrace functions inside
mysqltest were being used without proper checks for their
presence in the build.
The problem was that when a embedded linked version of mysqltest
crashed there was no way to obtain a stack trace if no core file
is available. Another problem is that the embedded version of
libmysql was not behaving (crash) the same as the non-embedded with
respect to sending commands to a explicitly closed connection.
The solution is to generate a mysqltest's stack trace on crash
and to enable "reconnect" if the connection handle was explicitly
closed so the behavior matches the non-embedded one.
The problem is a hack in mysqltest.c::append_field that modifies
the exponential notation of floating point numbers by removing a
zero after the the symbol 'e' (eg: 00001.2e+018 is converted to
00001.2e+18) but does not take into account the zerofill affect
in the start of the string.
The solution is to check if the field was zero filled and insert
a zero at the start of the string if a zero after the exponential
notation symbol is removed.
Bug#36028 - Test funcs_1.<engine>_trig_03e failing on Windows
Bug#36029 - Test funcs_1.<engine>_trig_0407 failing on Windows
Bug#36030 - Test funcs_1.<engine>_trig_08 failing on Windows
Adding $MASTER_MYSOCK to init_win_path()
When path names are short, master.sock ends up in MYSQL_TMP_DIR, but with longer path names,
master.sock ends up in /tmp/<random_string>/ and these tests will fail due to path delimiter difference.
New changeset to start with 5.0 -- Not all of these tests are present in 5.0, but want to keep mysqltest the same
100% effectively on Windows
The mysqltest docs state that the 'replace_result' command
doesn't perform any escape processing.
However the current implementation was processing backslash
escapes in the from/to strings.
This prevents replacing e.g. patch on windows (where backslash
is used as a path separator).
Fixed by removing the backslash escape processing from
'replace_result'.
when --master-data is used
When using the --master-data option with mysqldump, mysqldump uses
a FLUSH TABLES command. However, this statement got replicated to
the slave(s), which caused the slave(s) to block unnecessarily while
the FLUSH tables command completed.
Now, if the master-data option is set to one of the two "on" modes,
then use the "LOCAL" qualifier to ensure that it's not replicated.
When linking with some external programs, "multiple definition
of `init_time'"
Rename init_time() to my_init_time() to avoid collision with other
libraries (particularly libmng).