-
Notifications
You must be signed in to change notification settings - Fork 721
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
jcstress_FinalWrapper_0_FAILED IllegalStateException: @Contended does not seem to work properly #16569
Comments
Grinder failed 19 / 50. |
@JasonFengJ9 Does it also fail on the previous release? |
This is a new test, only 7 runs in the test history. |
21/50 failed for 0.35, so this is not a regression. |
Setting to vm for initial investigation. @tajila |
50x grinder w/ JDK19 AIX Temurin build - passed
|
@dnakamura Please take a look |
JDK11 0.36 build(
Also seen at |
JDK19 aarch64_mac(
3x grinder - 1/3 failed |
I am able to reproduce reliably. It appears the vm completely ignores the
Running the test with
Dumping the rom class show that the fields do appear to be marked as contended
note: |
With some more digging it appears that we never actually added support for the Of note this is actually a non-fatal test
Given that we don't support |
@llxia can we update the jtcstress test to reflect the contended tests can't work on OpenJ9? |
@jabrena do you happen to know if there is a quick way we can do this? Is it sufficient just exclude https://github.com/openjdk/jcstress/blob/master/jcstress-core/src/main/java/org/openjdk/jcstress/vm/ContendedTestMain.java? |
Hi @llxia, I will review it |
Hi @llxia I will reach today |
No progress, let’s talk with @llxia tomorrrow |
Good evening @pshipton, We scheduled some actions for next week. Juan Antonio |
Basically just a lack of resource to implement it. There is some contended support for entire classes, but not for individual fields. At the time it was implemented, there was no usage of contended on an individual field. |
We reviewed all alternatives and maybe the best approach is to send a PR to OpenJDK to skip that test for OpenJ9. Alternatives analyzed between @llxia & me:
If everyone is happy, I will send the PR to OpenJDK this week. Idea: package org.openjdk.jcstress.vm;
public class ContendedTestMain {
private static boolean isRunningOnOpenJ9() {
String impl = System.getProperty("java.vm.name");
System.out.println("System.getProperty('java.vm.name')=" + impl + "\n");
impl = impl.toLowerCase();
if (impl.contains("ibm")) {
return true;
} else if (impl.contains("openj9")) {
return true;
}
return false;
}
public static void main(String... args) throws IOException {
if(!isRunningOnOpenJ9()) {
//OpenJDK test
...
...
}
}
} Juan Antonio |
For checking vm.name, similar logic can be found at https://github.com/adoptium/TKG/blob/master/src/org/openj9/envInfo/JavaInfo.java#L152-L158 |
Updated the test with the logic provided: |
Hi @pshipton, we were doing few tests with @llxia : sdk use java 20.0.1-sem
java -jar tests-custom/target/jcstress.jar -t FinalWrapper
sdk use java 20.0.1-tem
java -jar tests-custom/target/jcstress.jar -t FinalWrapper And this is the results: |
just for the record, re #16569 (comment), we tried to rebuild jcstress with the change in #16569 (comment) to exclude ContendedTestMain. However, we got another error when running FinalWrapper. The same test works fine in Temerin.
|
@jabrena could we exclude the affected tests in playlist for now? |
Aye sir |
Pending Review @llxia |
Support for getThreadAllocatedBytes() was added in the 0.41 release. |
xlinux: https://openj9-jenkins.osuosl.org/view/Test/job/Grinder/3367/ ==> passed
|
@annaibm could you test the rest platforms and re-include only the platforms that work? Please see #16569 (comment) for example runs. Thanks |
* Enabled FinalWrapper test for platforms other than windows,aarch64_mac,ppc64_aix,s390x_linux_zt for openj9. related: eclipse-openj9/openj9#16569 Signed-off-by: Anna Babu Palathingal <[email protected]>
* Enabled FinalWrapper test for platforms other than windows,aarch64_mac,ppc64_aix for openj9. related: eclipse-openj9/openj9#16569 Signed-off-by: Anna Babu Palathingal <[email protected]>
ppc64_aix arch64_mac
|
* Enabled FinalWrapper test for platforms other than aarch64_mac and ppc64_aix for openj9. related: eclipse-openj9/openj9#16569 Signed-off-by: Anna Babu Palathingal <[email protected]>
* Enabled FinalWrapper test for platforms other than aarch64_mac and ppc64_aix for openj9. related: eclipse-openj9/openj9#16569 Signed-off-by: Anna Babu Palathingal <[email protected]>
Failure link
From an internal build(
paix819
):Rerun in Grinder - Change TARGET to run only the failed test targets.
Optional info
Failure output (captured from console output)
50x internal grinder
Also seen on jcstress_VolatileDoubleAtomicityTest_0_FAILED
jcstress_DoubleAtomicityTest_0_FAILED
The text was updated successfully, but these errors were encountered: