Bug #95916 -DWITH_MYSQLX=OFF build fails several tests not related to X
Submitted: 21 Jun 2019 10:06 Modified: 4 Sep 2019 4:59
Reporter: Laurynas Biveinis (OCA) Email Updates:
Status: Won't fix Impact on me:
None 
Category:MySQL Server: Tests Severity:S7 (Test Cases)
Version:8.0.16 OS:Any
Assigned to: CPU Architecture:Any

[21 Jun 2019 10:06] Laurynas Biveinis
Description:
8.0.16 compiles successfully with -DWITH_MYSQLX=OFF, however not all tests can handle X absence. One issue is that several tests try to restart with --skip-mysqlx, which is not understood by an X-less build.

[100%] main.system_variable_source               [ fail ]
...
2019-06-21T10:00:38.957943Z 0 [ERROR] [MY-000068] [Server] unknown option '--skip-mysqlx'.
2019-06-21T10:00:38.958904Z 0 [ERROR] [MY-010119] [Server] Aborting

Tests have have --skip-mysqlx:

./mysql-test/t/system_variable_source.test27:let $restart_parameters = restart: --innodb_dedicated_server=OFF --innodb_buffer_pool_size=24M --skip-mysqlx;
./mysql-test/t/system_variable_source.test76:--exec echo "restart:--no-defaults" --basedir=$MYSQL_BASEDIR --datadir=$MYSQLD_DATADIR --socket=$MYSQL_SOCKET --pid-file=$MYSQL_PIDFILE --port=$MYSQL_PORT --lc-messages-dir=$MYSQL_MESSAGESDIR --secure-file-priv="" --server-id=$MYSQL_SERVER_ID --innodb_dedicated_server=OFF --skip-mysqlx > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
./mysql-test/t/multiaddress_bind.test9:--let DEFARGS= --no-defaults --log-error=$MYSQLD_LOG --datadir=$MYSQLD_DATADIR --secure-file-priv="" --socket=$MYSQLD_SOCKET --skip-ssl --skip-mysqlx
./mysql-test/t/basedir.test28:let DEFARGS= --no-defaults --innodb_dedicated_server=OFF --explicit_defaults_for_timestamp --socket=$MYSQLD_SOCKET --port=$MYSQLD_PORT --skip-ssl --secure-file-priv="" --datadir=$DDIR --skip-mysqlx;
./mysql-test/t/basedir.test31:let INIT_FILE_ARGS_D= --no-defaults --innodb_dedicated_server=OFF --explicit_defaults_for_timestamp --socket=$MYSQLD_SOCKET --port=$MYSQLD_PORT  --skip-mysqlx --skip-ssl --secure-file-priv="" --datadir=$MTR_DATADIR -D --log-error=$MYSQLD_LOG;
./mysql-test/t/persisted_variables_extended.test63:--exec echo "restart:--no-defaults" --basedir=$MYSQL_BASEDIR --datadir=$MYSQLD_DATADIR --socket=$MYSQL_SOCKET --pid-file=$MYSQL_PIDFILE --port=$MYSQL_PORT --lc-messages-dir=$MYSQL_MESSAGESDIR --secure-file-priv="" --server-id=$MYSQL_SERVER_ID --innodb_dedicated_server=OFF --skip-mysqlx > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
./mysql-test/t/persisted_variables_extended.test96:--exec echo "restart:--defaults-file=$MYSQLTEST_VARDIR/tmp/my.cnf" --basedir=$MYSQL_BASEDIR --datadir=$MYSQLD_DATADIR --socket=$MYSQL_SOCKET --pid-file=$MYSQL_PIDFILE --port=$MYSQL_PORT --lc-messages-dir=$MYSQL_MESSAGESDIR --server-id=$MYSQL_SERVER_ID --sort_buffer_size=462144 --secure-file-priv="" --innodb_dedicated_server=OFF --skip-mysqlx > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
./mysql-test/t/persisted_variables_extended.test115:#--exec echo "restart:--defaults-extra-file=$MYSQLTEST_VARDIR/tmp/my_user_extra.cnf" --basedir=$MYSQL_BASEDIR --datadir=$MYSQLD_DATADIR --socket=$MYSQL_SOCKET --pid-file=$MYSQL_PIDFILE --port=$MYSQL_PORT --lc-messages-dir=$MYSQL_MESSAGESDIR --secure-file-priv="" --skip-mysqlx > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
./mysql-test/t/persisted_variables_extended.test180:--exec echo "restart"  --max_connections=default --innodb_fast_shutdown=1 --innodb_flush_log_at_trx_commit=2 innodb_flush_sync=DEFAULT --skip-mysqlx > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
./mysql-test/t/persisted_variables_extended.test231:--exec echo "restart: --performance_schema=OFF --log-bin" --server-id=$MYSQL_SERVER_ID --skip-mysqlx > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
./mysql-test/t/persisted_variables_extended.test411:--exec echo "restart:--defaults-file=$MYSQLTEST_VARDIR/tmp/my_tmp.cnf" --basedir=$MYSQL_BASEDIR --datadir=$MYSQLD_DATADIR --socket=$MYSQL_SOCKET --pid-file=$MYSQL_PIDFILE --port=$MYSQL_PORT --lc-messages-dir=$MYSQL_MESSAGESDIR --secure-file-priv="" --server-id=$MYSQL_SERVER_ID --innodb_dedicated_server=OFF --skip-mysqlx > $MYSQLTEST_VARDIR/tmp/mysqld.1.expect
./mysql-test/t/restart_server_no_acl.test9:let extra_args=--no-defaults --innodb_dedicated_server=OFF --console --loose-skip-auto_generate_certs --loose-skip-sha256_password_auto_generate_rsa_keys --skip-ssl --basedir=$BASEDIR --lc-messages-dir=$MYSQL_SHAREDIR --skip-mysqlx;
./mysql-test/suite/network_namespace/t/network_namespace_errors.test31:--let $DEFARGS= --no-defaults --log-error=$MYSQLD_LOG --datadir=$MYSQLD_DATADIR --secure-file-priv="" --socket=$MYSQLD_SOCKET --skip-ssl --skip-mysqlx

How to repeat:
cmake .. -DWITH_MYSQLX=OFF
...
./mtr system_variable_source # or any other test from the above list

Suggested fix:
s/--skip-mysqlx/--loose-skip-mysqlx/g

There could be other failure modes too
[22 Jun 2019 9:41] MySQL Verification Team
Hello Laurynas,

Thank you for the report and feedback!

regards,
Umesh
[14 Aug 2019 7:20] Laurynas Biveinis
See also bug 96526
[14 Aug 2019 7:37] Laurynas Biveinis
See also bug 96527
[4 Sep 2019 4:59] Erlend Dahl
See

Bug#96527 group_replication.gr_clone_integration_* tests break on X-less build