New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MTR flag to mark tests as incompatible with macOS #3113
base: 11.4
Are you sure you want to change the base?
Conversation
|
Evidently there is something missing from this patch. |
acbfba8
to
7ba2e2a
Compare
OK it works now. |
@@ -1,3 +1,6 @@ | |||
# Test doesn't work on macOS. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor suggestion:
This is redundant as including not_mac.inc
in the line below already implies this.
Perhaps a brief explanation of why this test doesn't work on macOS as a comment or in the commit description would be better.
Apart from that, looks good.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi Tony, thank you for the suggestion. I haven't (yet) investigated why this test doesn't work on macOS, but I will. Just not for this commit; its purpose is to demonstrate how to use not_mac.inc
.
7ba2e2a
to
f013914
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is mac generating different results than unix? Is so might need:
$ git diff mysql-test/
diff --git a/mysql-test/include/platform.combinations b/mysql-test/include/platform.combinations
index 4f0660b7a40..672f78e1fc5 100644
--- a/mysql-test/include/platform.combinations
+++ b/mysql-test/include/platform.combinations
@@ -4,3 +4,4 @@
[unix]
+[mac]
diff --git a/mysql-test/suite.pm b/mysql-test/suite.pm
index f30cc5ec431..4800c1e7dc6 100644
--- a/mysql-test/suite.pm
+++ b/mysql-test/suite.pm
@@ -18,11 +18,13 @@ sub skip_combinations {
# don't run tests for the wrong platform
if (IS_WINDOWS) {
- $skip{'include/platform.combinations'} = [ 'aix', 'unix' ];
+ $skip{'include/platform.combinations'} = [ 'aix', 'unix', 'mac' ];
} elsif (IS_AIX) {
- $skip{'include/platform.combinations'} = [ 'win', 'unix' ];
- } else {
- $skip{'include/platform.combinations'} = [ 'aix', 'win' ];
+ $skip{'include/platform.combinations'} = [ 'win', 'unix', 'mac' ];
+ } elsif (IS_MAC) {
+ $skip{'include/platform.combinations'} = [ 'aix', 'win', 'unix' ];
+ } else { # unix
+ $skip{'include/platform.combinations'} = [ 'aix', 'win', 'mac' ];
}
if ( $::opt_ps_protocol ) {
There are a few platform rdiff tests that would need recording on this:
$ find mysql-test/ -name \*rdiff | grep -E 'aix|win|unix'
mysql-test/main/mysqld--help,win.rdiff
mysql-test/main/mysqldump-system,win.rdiff
mysql-test/main/mysqld--help,aix.rdiff
mysql-test/suite/sys_vars/r/sysvars_server_notembedded,aix.rdiff
Otherwise including in a lower branch like 10.4 would also some use while tests can fixed/improved.
would be great to see a test that needs |
@vuvova I devised this mechanism as a way for us to get the mac buildbot working without fixing every test first. At the same time, this would prevent new test failures from creeping in because we could make the mac builder "required" when pushing commits, preventing deliveries from introducing new mac test failures. What you're asking for seems like a diagnosis of each mac test failure that we know about. At this point, that is time consuming which meanwhile allows for more failures to appear. Is such a pragmatic approach not desired, and if so why not? In short, it would be nice to plug the holes in the hull before bailing the water out. |
f013914
to
468440d
Compare
Hi @vuvova. A comment from @abarkov on MDEV-33652 highlights the need for this exclusion mechanism to be included sooner rather than later. In short, he'd like to wait for another fix to merge to 11.5 so that he can fix a failing macOS test in another way. (My original fix is here). I have no problem with that, but in the meantime this test will continue to fail on macOS. If the exclusion mechanism was in place, then we could leave a comment for Alex on his ticket to re-enable this failing test as part of his delivery. |
Hi @DaveGosselin-MariaDB , in the meanwhile the test could be fixed not to use upper case letters in the object names. |
@DaveGosselin-MariaDB my point was that this particular test, and, I suspect many mac-specific failures could be covered by |
Hi @vuvova , ah I understand now. There's nothing about inherent 'macness' that breaks this test. The test in question could be fixed either by @abarkov 's suggestion or yours (to use |
468440d
to
6eb93d7
Compare
6eb93d7
to
65a2f89
Compare
Introduces a new MTR include, not_mac.inc, which when included at the top of a test, prevents that test from running on macOS.
65a2f89
to
f97383b
Compare
Introduces a new MTR include, not_mac.inc, which when included at the top of a test, prevents that test from running on macOS.
There are many tests that don't work with macOS presently and they are not excluded in this commit; however, one is, as an example. The remaining tests will be fixed or marked as incompatible in future commits.