diff options
author | Sergei Golubchik <serg@mariadb.org> | 2022-01-01 17:19:21 +0100 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2022-01-14 22:16:39 +0100 |
commit | a88a4336fc4813c33a719db540816659097632c3 (patch) | |
tree | a1451798958715562069cea3c7c422bee6460b96 | |
parent | d7f4fd30f2ec9f2851e434d1922e2e382e6b8c92 (diff) | |
download | mariadb-git-a88a4336fc4813c33a719db540816659097632c3.tar.gz |
mtr failed to detect when a combination is forced
mtr detects a forced combination if the command line for a test already
includes all options from this combination. options are stored in a perl
hash as (key,value) pairs.
this breaks if the command line has two options with the same name,
like --plugin-load-add=foo --plugin-load-add=bar, and the combination
forces plugin foo.
In particular, this resulted in warnings when running
federated.federatedx_versioning test
-rw-r--r-- | mysql-test/lib/My/Options.pm | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/mysql-test/lib/My/Options.pm b/mysql-test/lib/My/Options.pm index 5827e0666a6..b3ae64cb4c2 100644 --- a/mysql-test/lib/My/Options.pm +++ b/mysql-test/lib/My/Options.pm @@ -142,11 +142,11 @@ sub diff { sub is_subset { my ($set, $subset)= @_; - my %cache = map { _split_option($_) } @$set; + my %cache = map { join('=', _split_option($_)), 1 } @$set; for (@$subset){ my ($name, $value)= _split_option($_); - return 0 unless exists $cache{$name} and $cache{$name} eq $value; + return 0 unless $cache{"$name=$value"}; } return 1; |