mysqld_safe script did not heed MySQL specific environment variable
$UMASK, leading to divergent behavior between mysqld and mysqld_safe.
Patch adds an approximation of mysqld's behavior to mysqld_safe,
within the bounds dictated by attempt to have mysqld_safe run on
even the most basic of shells (proper '70s sh, not just bash
with a fancy symlink).
Patch also adds approximation of said behavior to mysqld_multi
(in perl).
sql/sql_insert.cc:
CREATE ... IF NOT EXISTS may do nothing, but
it is still not a failure. don't forget to my_ok it.
******
CREATE ... IF NOT EXISTS may do nothing, but
it is still not a failure. don't forget to my_ok it.
sql/sql_table.cc:
small cleanup
******
small cleanup
The mysqld server and all clients now reads the new client-server section
Fixed that mysqldumpslow supports new slow log formats and new mysqld --slow- options
client/mysql.cc:
Read also client-server and client-mariadb sections.
client/mysql_upgrade.c:
Read also client-server and client-mariadb sections.
client/mysqladmin.cc:
Read also client-server and client-mariadb sections.
client/mysqlbinlog.cc:
Read also client-server and client-mariadb sections.
client/mysqlcheck.c:
Read also client-server and client-mariadb sections.
client/mysqldump.c:
Read also client-server and client-mariadb sections.
client/mysqlimport.c:
Read also client-server and client-mariadb sections.
client/mysqlshow.c:
Read also client-server and client-mariadb sections.
client/mysqltest.cc:
Read also client-server and client-mariadb sections.
extra/my_print_defaults.c:
Updated help text
scripts/mysql_fix_privilege_tables.sh:
Read also sections client client-server client-mariadb
scripts/mysql_install_db.pl.in:
Also allow --data=* option
Read also groups mariadb, server and client-server.
scripts/mysql_install_db.sh:
Also allow --data=* option
Read also groups mariadb, server and client-server.
Added --lose-skip-pbxt to bootstrap
scripts/mysql_secure_installation.sh:
Read also groups client-server and client-mariadb
scripts/mysqld_multi.sh:
Read also group mariadb
scripts/mysqld_safe.sh:
Read also groups mariadb server and client-server
scripts/mysqldumpslow.sh:
Fixed to support new slow log formats
Added sorting on -ae (aggregated number of retreived rows) and e (retrieved rows)
Read also group 'mariadb'
If there is many instances of same option, use last one.
Get slow log file from options log-slow-queries=filename or query-log-file=filename
Added support for future --log-basename option
sql-common/client.c:
Read also groups 'client-server' and 'client-mariadb'
tests/mysql_client_test.c:
Read also groups 'client-server' and 'client-mariadb'
tests/thread_test.c:
Read also groups 'client-server' and 'client-mariadb'
- Removed files specific to compiling on OS/2
- Removed files specific to SCO Unix packaging
- Removed "libmysqld/copyright", text is included in documentation
- Removed LaTeX headers for NDB Doxygen documentation
- Removed obsolete NDB files
- Removed "mkisofs" binaries
- Removed the "cvs2cl.pl" script
- Changed a few GPL texts to use "program" instead of "library"
A set of program options and variables was deprecated in
MySQL 5.1, and is hereby removed.
client/mysql.cc:
--no-auto-rehash (-A) is no longer deprecated
--no-named-commands (-g) is now removed
--skip-line-numbers (-L) is no longer deprecated
--set-variable (-O) is now removed
--no-pager is now removed
client/mysqlbinlog.cc:
--position is now removed (use --start-position)
-j is now equivalent with --start-position
client/mysqldump.c:
--first-slave is now removed
--no-set-names (-N) is now removed
--set-variable (-O) is now removed
mysql-test/include/default_mysqld.cnf:
default-character-set is removed as an option
character-set-server is equivalent.
mysql-test/t/bug47671-master.opt:
default-character-set option is removed
character-set-server is equivalent
mysql-test/t/ctype_latin1_de-master.opt:
default-character-set option is removed
character-set-server is equivalent
mysql-test/t/ctype_ucs2_def-master.opt:
default-collation is removed
collation-server is equicalent
scripts/mysqld_multi.sh:
--config-file has been superseded by
--defaults-extra-file
sql/mysql_priv.h:
Removed the version number in the deprecation
warning text, as decided by ServerPT.
sql/mysqld.cc:
--default-character-set (-C) is removed
--default-collation is removed
--log-long-format (-0) is removed
--safe-show-database is removed
--set-variable (-O) is removed
sql/sql_yacc.yy:
The FRAC_SECOND keyword is removed
sql/sys_vars.cc:
The sql_log_update system variable is removed
Several items said to be deprecated in the 4.1 manual
have never been removed. This worklog adds deprecation
warnings when these items are used, and warns the user
that the items will be removed in MySQL 5.6.
A couple of previously deprecation decision have been
reversed (see single file comments)
client/client_priv.h:
Macro similar to the one in the server (mysql_priv.h)
for printing a deprecation warning message
client/mysql.cc:
no-auto-rehash will not be deprecated
skip-line-numbers will not be deprecated
skip-column-names will not be deprecated
no-pager is deprecated
set-variable is deprecated
no-named-commands is deprecated
client/mysqladmin.cc:
set-variable is deprecated
client/mysqlbinlog.cc:
position is deprecated
client/mysqldump.c:
first-slave is deprecated
no-set-names is deprecated
set-variable is deprecated
mysql-test/r/mysqlbinlog.result:
Adding the [Warning] to the test case, just to show that the
deprecation works.
The test case will be changed in Celosia to use --start-position.
mysys/my_getopt.c:
set-variable (include -O) is deprecated
scripts/mysqld_multi.sh:
Warning for mysqld_multi
sql/mysqld.cc:
default-collation is deprecated
log-bin-trust-routine-creators is deprecated
set-variable is deprecated
default-character-set is deprecated
safe-show-database is deprecated
sql/share/errmsg.txt:
Added version number for sql_log_update deprecation message.
occasionally.
mysql_multi can call mysqld_safe. In doing this it's not changing the
current working directory. This may cause confusion in the case where
mysqld_multi is handling instances of servers of different versions
and the current working directory is the installation directory of one
of these servers.
Fixed by enhancing the meaning of basedir in [mysqldN] sections of
mysqld_multi. If specified, mysqld_multi will change the current
working directory to the basedir directory before starting the server
in mysqld_multi ... start ... and then change it back to what it was.
scripts/mysqld_multi.sh:
Bug #36654: optionally preserve, change and restore the cwd when
starting server instances
Bug#32136: mysqld_multi --defaults-file not respected while using \
--mysqld=mysqld_safe
Revert change that adds "--no-defaults" to mysqld_multi.
This closes Bug#43508 and re-opens Bug#32136.
--mysqld=mysqld_safe
The server run didn't know the correct section to read in a
configuration file, and would read from "[mysqld]" even though
mysqld_multi had already read the defaults and made them into explicit
parameters.
Worse, the "defaults-file" parameter says that it means "Read only
this configuration file, do not read the standard system-wide and
user-specific files", which should apply not only to mysql-multi, but
to the server also.
So, now if "defaults-file" is given, put "no-defaults" before all the
explicit parameters we read from the defaults-file and feed to the
mysqld or mysqld_safe.
Better Windows support in the scripts directory
mysql_config.pl.in, mysql_install_db.pl.in:
New Perl version of Unix shell script, mainly for Windows
Many files in scripts directory:
Use default Perl location "#!/usr/bin/perl" instead of the build host path
extra/CMakeLists.txt:
Added target for executable "resolveip"
extra/resolveip.c:
Exclude Unix specific headers when compiling on Windows
scripts/CMakeLists.txt:
On Windows, filter Perl scripts and change name from ".sh" to ".pl"
mysql_convert_table_format.sh mysql_explain_log.sh
mysql_secure_installation.sh mysql_tableinfo.sh
mysqld_multi.sh mysqldumpslow.sh
mysqlhotcopy.sh
Do the same for the new Windows specific Perl versions of shell scripts
mysql_config.pl.in mysql_install_db.pl.in
In CMake, set reasonable values for 'CFLAGS', 'prefix', 'datadir' and so on.
scripts/Makefile.am:
Include "mysql_config.pl.in" and "mysql_install_db.pl.in" in the source TAR
scripts/make_win_bin_dist:
Only include explicitly listed scripts from the "scripts" directory
scripts/mysql_convert_table_format.sh:
Use default Perl location "#!/usr/bin/perl" instead of the build host path
scripts/mysql_explain_log.sh:
Use default Perl location "#!/usr/bin/perl" instead of the build host path
scripts/mysql_tableinfo.sh:
Use default Perl location "#!/usr/bin/perl" instead of the build host path
scripts/mysqld_multi.sh:
Use default Perl location "#!/usr/bin/perl" instead of the build host path
scripts/mysqldumpslow.sh:
Use default Perl location "#!/usr/bin/perl" instead of the build host path
scripts/mysqlhotcopy.sh:
Use default Perl location "#!/usr/bin/perl" instead of the build host path
scripts/mysql_config.pl.in:
New Perl version of Unix shell script, mainly for Windows
scripts/mysql_install_db.pl.in:
New Perl version of Unix shell script, mainly for Windows
Recognize the --no-defaults, --defaults-file and --defaults-extra-file
options. Treat old --config-file argument as if --defaults-extra-file
had been specified instead.
Plus a few other defaults-related cleanups.
extra/my_print_defaults.c:
Make help text more accurate regarding how --config-file, --defaults-file, and --defaults-extra-file should be used. Flag --config-file as deprecated.
mysys/default.c:
Always print a newline after listing the default files, even if
--defaults-file= was set (in my_print_default_files()).
scripts/mysqld_multi.sh:
Recognize --no-defaults, --defaults-file and --defaults-extra-file options.
Treat old --config-file argument as if --defaults-extra-file had been specified
instead.
Improve find_groups() method, to honor --defaults-file, etc.
A few random drive-by cleanups, while I'm here.
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
configure.in:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/range.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/t/select.test:
Auto merged
scripts/mysqld_multi.sh:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_select.cc:
Auto merged
into siva.hindu.god:/usr/home/tim/m/bk/50
mysql-test/Makefile.am:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
scripts/mysqld_multi.sh:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/sql_class.h:
Auto merged
bug #25104
mysys/default.c:
Added /etc/mysql to the search path after /etc.
scripts/mysqld_multi.sh:
Added /etc/mysql to the my.cnf search path.
Changed chop to chomp - since it's smarter.
scripts/Makefile.am:
pass --sysconfdir to scripts
scripts/mysqlaccess.sh:
use --sysconfdir instead of hardcoded /etc
scripts/mysqld_multi.sh:
use --sysconfdir instead of hardcoded /etc
Currently failing tests (for me) in non-debug build:
blackhole fulltext fulltext_cache fulltext_left_join fulltext_multi
scripts/mysqld_multi.sh:
Auto merged
extra/comp_err.c:
Manual merge: From 4.1 to 5.0, the license line was moved to a different place.
Copyright string fixes (bug#16106)
extra/comp_err.c:
Ensure that the license spelling is as expected by the "mysql_copyright" tool.
(bug#16106)
scripts/mysqld_multi.sh:
The "mysql_copyright" tool will not change non-C files, so do not mention the license.
(bug#16106)
into mysql.com:/home/jimw/my/mysql-5.0-clean
mysql-test/t/variables.test:
Auto merged
sql/set_var.cc:
Auto merged
mysql-test/r/variables.result:
Resolve conflict
scripts/mysqld_multi.sh:
Resolve conflict