Skip to content

jdk_custom_0 issue #4495

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

Closed
llxia opened this issue Apr 5, 2023 · 1 comment · Fixed by #4568
Closed

jdk_custom_0 issue #4495

llxia opened this issue Apr 5, 2023 · 1 comment · Fixed by #4568
Labels

Comments

@llxia
Copy link
Contributor

llxia commented Apr 5, 2023

jdk_custom allows users to set their own CUSTOM_TARGET. But running TARGET=jdk_custom_x (with any suffix) is invalid.

When a user sets TARGET=jdk_custom_0 , the pipeline will try to map it to ${TARGET.toUpperCase()}_TARGET. That is JDK_CUSTOM_0_TARGET

18:13:39  + make _jdk_custom_0 JDK_CUSTOM_0_TARGET=java/lang/Thread/virtual/stress/PinALot.java#id0

But the param that we are replacing is JDK_CUSTOM_TARGET - java/math/BigInteger/BigIntegerTest.java.
https://github.com/adoptium/aqa-tests/blob/master/openjdk/openjdk.mk#L132

As a result, the Grinder will run the default test BigIntegerTest regardless of the user-provided CUSTOM_TARGET value.

When this happens, there is no clear indication in the console output, especially when the default test passes.

https://openj9-jenkins.osuosl.org/view/Test/job/Grinder/2178/
Even in raw TAP file, it shows CUSTOM_TARGET=java/lang/Thread/virtual/stress/PinALot.java#id0[1], but we actually run

16:42:48  F:/Users/jenkins/workspace/Grinder/aqa-tests/\\openjdk\\openjdk-jdk\\test\\jdk\\java/math/BigInteger/BigIntegerTest.java; \

[1]

# AQACert.log content: 
# 
# Hostname: win2019-x64-5

#SHA.txt content: 
# 
# Timestamp: Tue Apr  4 21:25:04 2023 UTC 
# CUSTOM_TARGET: java/lang/Thread/virtual/stress/PinALot.java#id0
1..1
ok 1 - jdk_custom_0
  ---
    success rate: 20/20
    duration_ms: 2535798
  ...

We should update the logic to ensure JDK_CUSTOM_TARGET is set correctly. Otherwise, it will be really hard for the users to notice the problem.

@llxia llxia added the bug label Apr 5, 2023
@smlambert
Copy link
Contributor

The behaviour in this case could be that we accept no suffix after jdk_custom (or any xxxx_custom targets), since they are a unique type of target, that we should also never allow variations in the playlists for (as in remove https://github.com/adoptium/aqa-tests/blob/master/openjdk/playlist.xml#L19-L23).

I often use TARGET=jdk_custom with CUSTOM_TARGET left blank to automatically run a very short test. The other option here to protect the user from themselves would be to always enforce the need to set CUSTOM_TARGET if using a TARGET that contains '_custom', but that would not be my preference (and does not resolve the current situation being reported).

llxia added a commit to llxia/aqa-tests that referenced this issue May 8, 2023
LongyuZhang added a commit that referenced this issue May 9, 2023
resolves: #4495

Signed-off-by: Lan Xia <[email protected]>
Co-authored-by: LongyuZhang <[email protected]>
pshipton added a commit to pshipton/openjdk-tests that referenced this issue May 10, 2023
Related to
adoptium#4495 (comment)

The jdk_custom variations are not necessarily the desired variations to
run. Since jdk_lang_j9 was added for Mode501 (-Xgcpolicy:balanced), this
variation is arguably missing from jdk_custom. If you replace command
line options, the variations may end up doing nothing except extra runs.

Signed-off-by: Peter Shipton <[email protected]>
LongyuZhang pushed a commit that referenced this issue May 10, 2023
Related to
#4495 (comment)

The jdk_custom variations are not necessarily the desired variations to
run. Since jdk_lang_j9 was added for Mode501 (-Xgcpolicy:balanced), this
variation is arguably missing from jdk_custom. If you replace command
line options, the variations may end up doing nothing except extra runs.

Signed-off-by: Peter Shipton <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants