maria-discuss team mailing list archive
-
maria-discuss team
-
Mailing list archive
-
Message #04264
Re: what about cleanly deprecation of config options
Am 20.01.2017 um 18:23 schrieb Sergei Golubchik:
Hi, Reindl!
On Jan 20, Reindl Harald wrote:
why do we have here ON/OFF and YES/NO at all
-DWITH_XTRADB=1 \
-DWITH_PARTITION=1 \
-DWITHOUT_ARCHIVE=1 \
-DWITHOUT_BLACKHOLE=1 \
-DWITHOUT_CASSANDRA=1 \
-DWITHOUT_MROONGA=1 \
-DWITHOUT_OQGRAPH=1 \
-DWITHOUT_PERFSCHEMA=1 \
-DWITHOUT_SPHINX=1 \
-DWITHOUT_SPIDER=1 \
-DENABLED_PROFILING=OFF \
-DENABLE_DTRACE=OFF \
what is a storage engine, what is a plugin, what is some misc option
and where is now YES/NO and where ON/OFF needed and what is renamed and
what was kept
in the past cmake at least complained somewhere about unknown options
-DWITH_LIBWRAP=OFF worked (partly) while -DWITHOUT_LIBWRAP=ON was
ignored silently - that's a very idiotic syntax in general instead have
-DWITHOUT-FEATURE and -DWITH_FEATURE
-DWITH_LIBWRAP=OFF is by all respect pervert "with something off" in
which natural or logical language is that normal?
That's exactly why we've introduced PLUGIN_xxx options. In 10.0 and
earlier you could specify both -DWITH_xxx and -DWITHOUT_xxx, and it was
confusing. Like, what would you expect to happen after
cmake -DWITHOUT_ARCHIVE=ON -DWITH_ARCHIVE=ON ?
spit out a message and exit with a non-zero status code
That's why we've introduced a set of PLUGIN_xxx options, that are
supposed to replace -DWITH_xxx and -DWITHOUT_xxx for plugin. Storage
engines are plugins too, btw.
But old options should continue working as before, so perhaps you've
stumbled upon a bug, where old WITH/WITHOUT options don't work as they
used to.
Anyway, since 10.1 the recommended way is to use -DPLUGIN_xxx=yyy
where xxx is the plugin name, for example, SPIDER, and yyy is one of
NO - don't build a plugin at all, skip it
STATIC - link it into the server statically, if possible. otherwise skip
DYNAMIC - build a dynamically loaded plugin, if possible. otherwise skip
AUTO - static, if possible, otherwise dynamic, if possible, otherwise skip
YES - static, if possible, otherwise dynamic, if possible, otherwise error
and what is with the non-plugin options with ON/OFF
why can't 0/OFF/NO and 1/ON/YES not handeled similar or just one for all
decie what it is now
where are the full otpions docuemented?
CMakeLists.txt is only partly helpful
that below seems now to do what it is supposed and maybe i give
"-DPLUGIN_PARTITION=NO" another try and remove the config option to
disable it from everywhere - hopefully the testsuite in the meantime got
fixed in that context, the ipv6 and compression tests are in a *horrible
shape*
________________________
yeah the machine has no ipv6 and probably never will get one - realize
that one and for at begin
CURRENT_TEST: main.ipv6
/usr/bin/mysqladmin: connect to server at '::1' failed
CURRENT_TEST: rpl.rpl_ip_mix
mysqltest: In included file "./include/rpl_ip_mix.inc":
CURRENT_TEST: rpl.rpl_ip_mix2
mysqltest: In included file "./include/rpl_ip_mix2.inc":
________________________
CURRENT_TEST: rpl.rpl_semi_sync_after_sync
mysqltest: At line 2: query 'set global
rpl_semi_sync_master_wait_point=AFTER_SYNC' failed: 1193: Unknown system
variable 'rpl_semi_sync_master_wait_point'
CURRENT_TEST: rpl.rpl_semi_sync_event_after_sync
mysqltest: At line 1: query 'set global
rpl_semi_sync_master_wait_point=AFTER_SYNC' failed: 1193: Unknown system
variable 'rpl_semi_sync_master_wait_point'
________________________
encryption.innodb_encryption 'xtradb' [ skipped ] Test requires InnoDB.
***Warnings generated in error logs during shutdown after running tests:
encryption.innodb_encryption
2017-01-20 18:54:33 140376016243008 [ERROR] InnoDB: cannot enable
encryption, encryption plugin is not available
2017-01-20 18:54:33 140376016243008 [ERROR] Plugin 'InnoDB' init
function returned error.
2017-01-20 18:54:33 140376016243008 [ERROR] Plugin 'InnoDB' registration
as a STORAGE ENGINE failed.
encryption.innodb_encryption-page-compression 'xtradb' [ skipped ] Test
requires InnoDB.
encryption.innodb_encryption_tables 'xtradb' [ skipped ] Test requires
InnoDB.
***Warnings generated in error logs during shutdown after running tests:
encryption.innodb_encryption_tables
encryption.innodb_encryption-page-compression
2017-01-20 18:54:33 139811964750144 [ERROR] InnoDB: cannot enable
encryption, encryption plugin is not available
2017-01-20 18:54:33 139811964750144 [ERROR] Plugin 'InnoDB' init
function returned error.
2017-01-20 18:54:33 139811964750144 [ERROR] Plugin 'InnoDB' registration
as a STORAGE ENGINE failed.
sys_vars.sysvars_server_embedded '64bit' [ skipped ] Test requires:
embedded server
sys_vars.sysvars_server_notembedded '64bit' [ fail ]
Test ended at 2017-01-20 18:54:34
CURRENT_TEST: sys_vars.sysvars_server_notembedded
---
/usr/share/mysql-test/suite/sys_vars/r/sysvars_server_notembedded.result
2017-01-17 20:38:24.000000000 +0100
+++
/usr/share/mysql-test/suite/sys_vars/r/sysvars_server_notembedded.reject
2017-01-20 18:54:34.414043522 +0100
@@ -1201,7 +1201,7 @@
COMMAND_LINE_ARGUMENT NULL
VARIABLE_NAME HAVE_PROFILING
________________________
cmake . -DBUILD_CONFIG=mysql_release \
-DFEATURE_SET="community" \
-DCMAKE_INSTALL_PREFIX="%{_prefix}" \
-DINSTALL_INCLUDEDIR=include/mysql \
-DINSTALL_LAYOUT=RPM \
-DINSTALL_LIBDIR="%{_lib}/mysql" \
-DINSTALL_MANDIR=share/man \
-DINSTALL_MYSQLSHAREDIR=share/mysql \
-DINSTALL_MYSQLTESTDIR=share/mysql-test \
-DINSTALL_PLUGINDIR="%{_lib}/mysql/plugin" \
-DINSTALL_SBINDIR=libexec \
-DINSTALL_SCRIPTDIR=bin \
-DINSTALL_SQLBENCHDIR= \
-DINSTALL_SUPPORTFILESDIR=share/mysql \
-DMYSQL_DATADIR="%{_sharedstatedir}/mysql" \
-DMYSQL_UNIX_ADDR="%{_sharedstatedir}/mysql/mysql.sock" \
-DPLUGIN_XTRADB=YES \
-DPLUGIN_PARTITION=YES \
-DPLUGIN_ARCHIVE=NO \
-DPLUGIN_BLACKHOLE=NO \
-DPLUGIN_CASSANDRA=NO \
-DPLUGIN_MROONGA=NO \
-DPLUGIN_OQGRAPH=NO \
-DPLUGIN_PERFSCHEMA=NO \
-DPLUGIN_SPHINX=NO \
-DPLUGIN_SPIDER=NO \
-DENABLED_PROFILING=OFF \
-DENABLE_DTRACE=OFF \
-DENABLE_DEBUG_SYNC=OFF \
-DWITHOUT_TOKUDB=ON \
-DWITH_VALGRIND=OFF \
-DWITH_SAFEMALLOC=OFF \
-DWITH_EMBEDDED_SERVER=OFF \
-DWITH_FEEDBACK=OFF \
-DWITH_INNODB_DISALLOW_WRITES=OFF \
-DWITH_LIBWRAP=OFF \
-DWITH_READLINE=OFF \
-DWITH_WSREP=OFF \
-DUSE_NEW_READLINE_INTERFACE=ON \
-DENABLED_LOCAL_INFILE=ON \
-DNOT_FOR_DISTRIBUTION=ON \
-DWITH_ATOMIC_OPS=smp \
-DWITHOUT_DYNAMIC_PLUGINS=ON \
-DWITH_PIC=ON \
-DWITH_JEMALLOC=system \
-DWITH_SSL=system \
-DWITH_ZLIB=system
References