Bug #89464 MTR test x.connection_unixsocket_invalid failure
Submitted: 30 Jan 2018 7:32 Modified: 7 Feb 2018 10:34
Reporter: Laurynas Biveinis (OCA) Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Document Store: X Plugin Severity:S3 (Non-critical)
Version:8.0.4 OS:Any
Assigned to: CPU Architecture:Any

[30 Jan 2018 7:32] Laurynas Biveinis
Description:
This probably happens due to cwd being longer than can be handled here:

x.connection_unixsocket_invalid          [ fail ]
        Test ended at 2018-01-30 09:30:02

CURRENT_TEST: x.connection_unixsocket_invalid
--- /Users/laurynas/percona/mysql-8.0.4/rapid/plugin/x/tests/mtr/r/connection_unixsocket_invalid.result	2018-01-18 18:43:56.000000000 +0300
+++ /Users/laurynas/percona/obj-mysql-8.0.4-asan-debug/mysql-test/var/log/connection_unixsocket_invalid.reject	2018-01-30 10:30:01.000000000 +0300
@@ -48,7 +48,7 @@
 not ok
 call mtr.add_suppression("Plugin mysqlx reported: .Setup of UNIX socket \(.+\) failed, can't create lock file .*no_existing/mysqlx.socket.lock");
 # restart: --loose-mysqlx-socket= SOCKET
-in main, line 0:ERROR: No such file or directory, while connecting to  SOCKET (code 2002)
+in main, line 0:ERROR: UNIX Socket file name too long, size should be less or equal 103 (code 2005)
 not ok
 call mtr.add_suppression("Plugin mysqlx reported: .Setup of UNIX socket \(.+\) failed, the socket file path is too long");
 # restart: --loose-mysqlx-socket= SOCKET

mysqltest: Result length mismatch

$ pwd
/Users/laurynas/percona/obj-mysql-8.0.4-asan-debug/mysql-test
source directory is at /Users/laurynas/percona-mysql-8.0.4

How to repeat:
$ ./mtr --debug-server --suite=x connection_unixsocket_invalid
[30 Jan 2018 7:44] MySQL Verification Team
Hello Laurynas,

Thank you for the report.

Thanks,
Umesh
[30 Jan 2018 7:45] MySQL Verification Team
--
cmake . -DWITH_ASAN=ON -DWITH_BOOST=./boost/ -DWITH_DEBUG=ON -DENABLE_DOWNLOADS=ON
make -j16

[umshastr@hod03]/export/umesh/server/source/bugs/src_build/89438: cd mysql-8.0.4-rc/
[umshastr@hod03]/export/umesh/server/source/bugs/src_build/89438/mysql-8.0.4-rc: cd mysql-test/
[umshastr@hod03]/export/umesh/server/source/bugs/src_build/89438/mysql-8.0.4-rc/mysql-test: ./mtr --debug-server --suite=x connection_unixsocket_invalid
Logging: ./mtr  --debug-server --suite=x connection_unixsocket_invalid
2018-01-30T07:37:20.204838Z 0 [System] [MY-010116] /export/umesh/server/source/bugs/src_build/89438/mysql-8.0.4-rc/runtime_output_directory/mysqld (mysqld 8.0.4-rc-debug-log-asan) starting as process 19774 ...
MySQL Version 8.0.4
Checking supported features...
 - SSL connections supported
 - binaries are debug compiled
Collecting tests...
Checking leftover processes...
Removing old var directory...
Creating var directory '/export/umesh/server/source/bugs/src_build/89438/mysql-8.0.4-rc/mysql-test/var'...
Installing system database...
Using parallel: 1

==============================================================================

TEST                                      RESULT   TIME (ms) or COMMENT
--------------------------------------------------------------------------

worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 13000..13019
x.connection_unixsocket_invalid          [ fail ]
        Test ended at 2018-01-30 08:39:30

CURRENT_TEST: x.connection_unixsocket_invalid
mysqltest: In included file ./include/wait_condition_or_abort.inc at line 32:
included from ./include/xplugin_wait_for_interfaces.inc at line 46:
included from /export/umesh/server/source/bugs/src_build/89438/mysql-8.0.4-rc/rapid/plugin/x/tests/mtr/include/restart_mysqld_and_wait_for_xplugin.inc at line 13:
included from /export/umesh/server/source/bugs/src_build/89438/mysql-8.0.4-rc/rapid/plugin/x/tests/mtr/t/connection_unixsocket_invalid.test at line 84:
At line 32:

The result from queries just before the failure was:
< snip >
call mtr.add_suppression("Plugin mysqlx reported: .Setup of UNIX socket \(.+\) failed, the socket file path is empty");
# restart: --loose-mysqlx-socket=
in main, line 0:ERROR: No such file or directory, while connecting to  SOCKET (code 2002)
not ok
call mtr.add_suppression("Plugin mysqlx reported: .Setup of UNIX socket \(.+\) failed, can't create lock file /dev/null/mysqlx\.sock\.lock");
# restart: --loose-mysqlx-socket=/dev/null/mysqlx.sock
in main, line 0:ERROR: No such file or directory, while connecting to  SOCKET (code 2002)
not ok
in main, line 0:ERROR: Not a directory, while connecting to  SOCKET (code 2002)
not ok
call mtr.add_suppression("Plugin mysqlx reported: .Setup of UNIX socket \(.+\) failed, lock file wasn't allocated by X Plugin");
UNINSTALL PLUGIN mysqlx;
# restart: --loose-mysqlx-socket= SOCKET
install plugin mysqlx soname "mysqlx.so";
# restart: --loose-mysqlx-socket= SOCKET
Timeout in wait_condition.inc for SELECT 1 FROM performance_schema.global_status WHERE
(VARIABLE_NAME like "Mysqlx_socket" AND
VARIABLE_VALUE != "" AND
VARIABLE_VALUE != "UNDEFINED") OR
CONVERT(@@version_compile_os using latin1) IN ("Win32","Win64","Windows")
safe_process[19853]: Child process: 19854, exit: 1

 - the logfile can be found in '/export/umesh/server/source/bugs/src_build/89438/mysql-8.0.4-rc/mysql-test/var/log/x.connection_unixsocket_invalid/connection_unixsocket_invalid.log'
--------------------------------------------------------------------------
The servers were restarted 0 times
Spent 0.000 of 130 seconds executing testcases

Completed: Failed 1/1 tests, 0.00% were successful.

Failing test(s): x.connection_unixsocket_invalid

The log files in var/log may give you some hint of what went wrong.

If you want to report this error, please read first the documentation
at http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html

mysql-test-run: *** ERROR: there were failing test cases
[7 Feb 2018 10:34] Margaret Fisher
Posted by developer:
 
Changelog entry added for 8.0.5 (Server log):
Socket files used with X Plugin tests are now limited to 22-character file names.