X plugin testsuite not updated for Percona Server

Bug #1697700 reported by Laurynas Biveinis
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Percona Server moved to https://jira.percona.com/projects/PS
Status tracked in 5.7
5.5
Invalid
Undecided
Unassigned
5.6
Invalid
Undecided
Unassigned
5.7
Fix Released
Low
Laurynas Biveinis

Bug Description

The X plugin testsuite has not been checked to pass with Percona Server.

A run shows the following failures:
Failing test(s): x.binary_log x.regression x.performance_schema x.connection_tls_version

Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

x.binary_log [ fail ]
        Test ended at 2017-06-13 17:13:16

CURRENT_TEST: x.binary_log
--- /Users/laurynas/percona/mysql-server/rapid/plugin/x/tests/mtr/r/binary_log.result 2017-06-13 15:23:26.000000000 +0300
+++ /Users/laurynas/percona/obj-percona-5.7-debug/mysql-test/var/log/binary_log.reject 2017-06-13 17:13:16.000000000 +0300
@@ -35,7 +35,7 @@
 }
 ok
 SHOW PROCESSLIST;
-Id User Host db Command Time State Info
-<ID> root <HOST_NAME> test Query <TIME> STATE SHOW PROCESSLIST
+Id User Host db Command Time State Info Rows_sent Rows_examined
+<ID> root <HOST_NAME> test Query <TIME> STATE SHOW PROCESSLIST 0 0
 DROP TABLE x;
 UNINSTALL PLUGIN mysqlx;

mysqltest: Result content mismatch

tags: added: merge-regression
Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

x.regression [ fail ]
        Test ended at 2017-06-13 17:21:05

CURRENT_TEST: x.regression
--- /Users/laurynas/percona/mysql-server/rapid/plugin/x/tests/mtr/r/regression.result 2017-06-13 15:23:26.000000000 +0300
+++ /Users/laurynas/percona/obj-percona-5.7-debug/mysql-test/var/log/regression.reject 2017-06-13 17:21:05.000000000 +0300
@@ -7,12 +7,12 @@
 RUN show processlist;
 Id User Host db Command Time State Info Rows_sent Rows_examined
 $PROC_1_ID root localhost test Sleep 0 null 0 0
-$PROC_2_ID root localhost null Query 0 cleaning up PLUGIN: show processlist 0 0
+$PROC_2_ID root localhost null Query 0 null PLUGIN: show processlist 0 0
 0 rows affected
 RUN SELECT id,user,command,state FROM information_schema.processlist ORDER BY id
 id user command state
-2 root Sleep
-4 root Query executing
+3 root Sleep
+5 root Query executing
 0 rows affected
 Mysqlx.Ok {
   msg: "bye!"

mysqltest: Result content mismatch

Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

x.performance_schema [ fail ]
        Test ended at 2017-06-13 17:27:41

CURRENT_TEST: x.performance_schema
--- /Users/laurynas/percona/mysql-server/rapid/plugin/x/tests/mtr/r/performance_schema.result 2017-06-13 15:23:26.000000000 +0300
+++ /Users/laurynas/percona/obj-percona-5.7-debug/mysql-test/var/log/performance_schema.reject 2017-06-13 17:27:41.000000000 +0300
@@ -301,8 +301,8 @@
 1
 0 rows affected
 SCHEMA_NAME DIGEST DIGEST_TEXT COUNT_STAR
-null 21b6affb55f3e69c598b47257f4d0ec6 TRUNCATE TABLE `performance_schema` . `events_statements_summary_by_digest` 1
-null f29eded39dd5fa102f18987679dd0c14 SELECT ? 1
+null 512e888765927f4393e9f938df43b1ec SELECT ? 1
+null 744c1bc8d3511f12f73e3058ab65943f TRUNCATE TABLE `performance_schema` . `events_statements_summary_by_digest` 1
 0 rows affected
 Mysqlx.Ok {
   msg: "bye!"

mysqltest: Result content mismatch

Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

x.connection_tls_version [ fail ]
        Test ended at 2017-06-13 17:30:37

CURRENT_TEST: x.connection_tls_version
--- /Users/laurynas/percona/mysql-server/rapid/plugin/x/tests/mtr/r/connection_tls_version.result 2017-06-13 15:23:26.000000000 +0300
+++ /Users/laurynas/percona/obj-percona-5.7-debug/mysql-test/var/log/connection_tls_version.reject 2017-06-13 17:30:37.000000000 +0300
@@ -167,7 +167,7 @@
   msg: "bye!"
 }
 ok
-Application terminated with expected error: protocol version mismatch (code 2026)
+in main, line 0:ERROR: not in error state (code 2026)
 not ok
 CONNECTION_TYPE
 SSL/TLS
@@ -182,7 +182,7 @@
   msg: "bye!"
 }
 ok
-Application terminated with expected error: protocol version mismatch (code 2026)
+in main, line 0:ERROR: not in error state (code 2026)
 not ok
 Application terminated with expected error: TLS version is invalid (code 2026)
 not ok
@@ -226,7 +226,7 @@
   msg: "bye!"
 }
 ok
-Application terminated with expected error: socket layer receive error (code 2026)
+in main, line 0:ERROR: not in error state (code 2026)
 not ok
 CONNECTION_TYPE
 SSL/TLS
@@ -241,7 +241,7 @@
   msg: "bye!"
 }
 ok
-Application terminated with expected error: socket layer receive error (code 2026)
+in main, line 0:ERROR: not in error state (code 2026)
 not ok
 CONNECTION_TYPE
 SSL/TLS

mysqltest: Result content mismatch

Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

x.connection_tls_version is a regression from bug 1660339

tags: added: regression
Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

x.regression then fails the testcase check:

x.regression [ pass ] 6506

MTR's internal check of the test case 'x.regression' failed.
This means that the test case does not preserve the state that existed
before the test case was executed. Most likely the test case did not
do a proper clean-up. It could also be caused by the previous test run
by this thread, if the server wasn't restarted.
This is the diff of the states of the servers before and after the
test case was executed:
mysqltest: Logging to '/mnt/workspace/mysql-5.7-param/BUILD_TYPE/release/Host/ubuntu-zesty-64bit/build/mysql-test/var/tmp/check-mysqld_1.log'.
mysqltest: Results saved in '/mnt/workspace/mysql-5.7-param/BUILD_TYPE/release/Host/ubuntu-zesty-64bit/build/mysql-test/var/tmp/check-mysqld_1.result'.
mysqltest: Connecting to server localhost:13001 (socket /tmp/NYJBA6iqfc/mysqld.1.sock) as 'root', connection 'default', attempt 0 ...
mysqltest: ... Connected.
mysqltest: Start processing test commands from './include/check-testcase.test' ...
mysqltest: ... Done processing test commands.
--- /mnt/workspace/mysql-5.7-param/BUILD_TYPE/release/Host/ubuntu-zesty-64bit/build/mysql-test/var/tmp/check-mysqld_1.result 2017-06-15 10:30:22.378105113 +0300
+++ /mnt/workspace/mysql-5.7-param/BUILD_TYPE/release/Host/ubuntu-zesty-64bit/build/mysql-test/var/tmp/check-mysqld_1.reject 2017-06-15 10:30:29.205820935 +0300
@@ -3114,12 +3114,12 @@
 mysql.help_relation 0
 mysql.host NULL
 mysql.procs_priv 0
-mysql.tables_priv 3286698170
+mysql.tables_priv 562417445
 mysql.time_zone 2420313365
 mysql.time_zone_leap_second 3799112081
 mysql.time_zone_name 2268956709
 mysql.time_zone_transition 3895294076
 mysql.time_zone_transition_type 168184411
-mysql.user 3283710450
+mysql.user 2300035176
 Warnings:
 Error 1146 Table 'mysql.host' doesn't exist

mysqltest: Result content mismatch

The fix is to backport the following from 8.0:

commit 8617d643bcaaab36155aef35b39afd60c3bf3f30
Author: Lukasz Kotula <email address hidden>
Date: Thu Jan 26 11:29:16 2017 +0100

    Fix for toggling x.regression

    Description
    ===========

    Creation of 'mysqlxsys' account in thread That calls plugin entry
    Point is not possible, because it could be executed at the start mysqld.
    When mysqld starts the SQL service is not accessable. The creation
    of account was moved to a separate thread which races with 'mysql-test'
    pre / post-check.

    Fix
    ===

    Plugin is going to be loaded by mysqltest script instead from MTRs
    opt file. In this case we aren't in race with MTR.

    RB: 15320
    Reviewed-by: Andrzej Religa <email address hidden>

Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

x.connection_tls_version fails on Ubuntu Precise, upstream too:

x.connection_tls_version w4 [ fail ]
        Test ended at 2017-06-14 09:08:09

CURRENT_TEST: x.connection_tls_version
mysqltest: At line 43: command "$MYSQLXTEST --tls-version=TLSv1,TLSv1.2 $XTESTPARAMS 2>&1" failed

Output from before failure:
in main, line 0:ERROR: error:14077102:SSL routines:SSL23_GET_SERVER_HELLO:unsupported protocol (code 2026)
not ok
exec of '/mnt/workspace/mysql-5.7-param/BUILD_TYPE/release/Host/ubuntu-precise-64bit/build/rapid/plugin/x/mysqlxtest --port=13050 --tls-version=TLSv1,TLSv1.2 -u user5_mysqlx --password='auth_string' --file=/tmp/EdR5CJvY47/4/connection_tls_version.tmp --ssl-cipher='DHE-RSA-AES256-SHA' 2>&1' failed, error: 256, status: 1, errno: 0

Not sure if that needs fixing because of Precise being EOL'ed

Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :
Revision history for this message
Laurynas Biveinis (laurynas-biveinis) wrote :

Ubuntu Precise failure moved to bug 1698996

Revision history for this message
Shahriyar Rzayev (rzayev-sehriyar) wrote :

Percona now uses JIRA for bug reports so this bug report is migrated to: https://jira.percona.com/browse/PS-2277

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.