Commit 429382c2 authored by Dmitry Shulga's avatar Dmitry Shulga

MDEV-26142: Fix failures of the tests main.features and...

MDEV-26142: Fix failures of the tests main.features and sys_vars.stored_program_cache_func when they are run in PS mode

These tests produced different results in case they were run
with the option --ps-protocol.

These tests produced different result sets since a value of
Feature_subquery and handler_read_key status system variables
are updated one time more for ps-protocol (the first time it is updated
on Prepare phase and the second time on Execute phase of PS protocol)
So different result sets are expected for both tests. To make tests
successfully runnable both for case it is run with and without
the option --ps-protocol the new protocol combination [ps, nm]
and protocol specific result files have been added.

Moreover, the perl script mysql-test/mariadb-test-run.pl
has been updated to make the variable opt_ps_protocol visible
outside perl file containing this variable.
parent ff0d3bb8
# The goal of including this file is to enable protocol
# combinations (see include/protocol.combinations)
--- features.result
+++ features,ps.result
@@ -46,7 +46,7 @@
1212
show status like "feature_dynamic_columns";
Variable_name Value
-Feature_dynamic_columns 2
+Feature_dynamic_columns 4
#
# Feature fulltext
#
@@ -93,7 +93,7 @@
drop table t1;
show status like "feature_subquery";
Variable_name Value
-Feature_subquery 4
+Feature_subquery 5
#
# Feature timezone
#
# Testing of feature statistics # Testing of feature statistics
if (`SELECT $PS_PROTOCOL != 0`)
{
--skip Test temporarily disabled for ps-protocol
}
-- source include/have_geometry.inc -- source include/have_geometry.inc
-- source include/protocol.inc
--disable_warnings --disable_warnings
drop table if exists t1; drop table if exists t1;
......
...@@ -244,7 +244,7 @@ my $opt_ssl; ...@@ -244,7 +244,7 @@ my $opt_ssl;
my $opt_skip_ssl; my $opt_skip_ssl;
my @opt_skip_test_list; my @opt_skip_test_list;
our $opt_ssl_supported; our $opt_ssl_supported;
my $opt_ps_protocol; our $opt_ps_protocol;
my $opt_sp_protocol; my $opt_sp_protocol;
my $opt_cursor_protocol; my $opt_cursor_protocol;
my $opt_view_protocol; my $opt_view_protocol;
......
...@@ -25,6 +25,12 @@ sub skip_combinations { ...@@ -25,6 +25,12 @@ sub skip_combinations {
$skip{'include/platform.combinations'} = [ 'aix', 'win' ]; $skip{'include/platform.combinations'} = [ 'aix', 'win' ];
} }
if ( $::opt_ps_protocol ) {
$skip{'include/protocol.combinations'} = [ 'nm' ];
} else {
$skip{'include/protocol.combinations'} = [ 'ps' ];
}
$skip{'include/maybe_debug.combinations'} = $skip{'include/maybe_debug.combinations'} =
[ defined $::mysqld_variables{'debug-dbug'} ? 'release' : 'debug' ]; [ defined $::mysqld_variables{'debug-dbug'} ? 'release' : 'debug' ];
......
--- stored_program_cache_func.result
+++ stored_program_cache_func,ps.result
@@ -21,13 +21,13 @@
1
show status like 'handler_read_key';
Variable_name Value
-Handler_read_key 2
+Handler_read_key 3
call p1;
1
1
show status like 'handler_read_key';
Variable_name Value
-Handler_read_key 3
+Handler_read_key 5
drop procedure p1;
set global stored_program_cache=default;
create procedure pr(i int) begin
if (`SELECT $PS_PROTOCOL != 0`) --source include/protocol.inc
{
--skip Test temporarily disabled for ps-protocol
}
create procedure p1() select 1; create procedure p1() select 1;
flush status; flush status;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment