On Tue, 23 Nov 2021 04:57:57 GMT, Alexander Matveev <almat...@openjdk.org> 
wrote:

>> Can I please get a review of this change which proposes to add more 
>> diagnostics when a failure occurs in the jlink tool during the jpackage 
>> tests?
>> 
>> As noted in https://bugs.openjdk.java.net/browse/JDK-8277507, so far 3 
>> failures have been reported in jpackage tests (across different test cases) 
>> with the same underlying cause coming from the jlink tool. Since this 
>> failure isn't specific to one or two tests and seems to be keep happening 
>> across these tests in `test/jdk/tools/jpackage/`, I decided to set this 
>> system property from one central location in the `HelloApp` which gets used 
>> by these tests. These failures have only been reported on macos (and 
>> specifically aarch64), but the commit here doesn't do any OS name checks, to 
>> keep this change simple. Furthermore, looking at the 
>> `jdk.tools.jlink.internal.JlinkTask` code, enabling this system property 
>> will _not_ generate any additional logs unless there's an exception thrown 
>> by the `jlink` tool, in which case it prints the exception stacktrace. So 
>> enabling this by default won't end up increasing the log output or flooding 
>> the logs.
>> 
>> With this change, I have run the 3 tests noted in those issues locally to 
>> make sure this doesn't break anything else. I have also verified manually 
>> that enabling this system property does indeed get propagated to the 
>> `JlinkTask` and checked the logs to see that the command line does pass it:
>> 
>>> 
>>> [17:51:07.123] TRACE: exec: Execute 
>>> [macosx-x86_64-server-release/images/jdk/bin/jpackage --input ./test/input 
>>> --dest ./test/output --name "Name With Space" --type pkg 
>>> -J-Djlink.debug=true --main-jar hello.jar --main-class Hello 
>>> --verbose](15); inherit I/O...
>>> [17:51:07.364] Building PKG package for Name With Space.
>>> [17:51:19.191] Command [PID: -1]:
>>>     jlink --output 
>>> /var/folders/7v/cnkwrnx154926cr3289w4rd80000gp/T/jdk.jpackage13608930262477285540/images/image-3713034571561734902/Name
>>>  With Space.app/Contents/runtime/Contents/Home --module-path 
>>> macosx-x86_64-server-release/images/jdk/jmods --add-modules 
>>> java.rmi,jdk.management.jfr,jdk.jdi,jdk.charsets,jdk.xml.dom,java.xml,java.datatransfer,jdk.jstatd,jdk.httpserver,java.desktop,java.security.sasl,jdk.zipfs,java.base,jdk.crypto.ec,jdk.javadoc,jdk.management.agent,jdk.jshell,jdk.editpad,jdk.jsobject,java.sql.rowset,jdk.sctp,jdk.unsupported,jdk.jlink,java.smartcardio,java.security.jgss,jdk.nio.mapmode,java.compiler,jdk.dynalink,jdk.unsupported.desktop,jdk.accessibility,jdk.security.jgss,jdk.incubator.vector,java.sql,java.xml.crypto,java.logging,java.transaction.xa,jdk.jfr,jdk.crypto.cryptoki,jdk.net,jdk.random,java.naming,jdk.internal.ed,java.prefs,java.net.http,jdk.compiler,jdk.internal.opt,jdk.naming.rmi,jdk.jconsole,jdk.attach,jdk.internal.le,java.management,jdk.jdwp.agent,j
 
dk.incubator.foreign,jdk.internal.jvmstat,java.instrument,jdk.management,jdk.security.auth,java.scripting,jdk.jdeps,jdk.jartool,jdk.jpackage,java.management.rmi,jdk.naming.dns,jdk.localedata
 --strip-native-commands --strip-debug --no-man-pages --no-header-files
>>> [17:51:19.192] Output:
>>>     WARNING: Using incubator modules: jdk.incubator.foreign, 
>>> jdk.incubator.vector
>>> 
>>> [17:51:19.192] Returned: 0
>>> 
>> 
>> These tests get run in `tier2` and I have no way of running the entire 
>> `tier2` locally or relying of GitHub actions which only runs `tier1`. If 
>> this change looks OK and is approved, then I would like to request for help 
>> running the entire tests against this PR before merging it.
>
> Marked as reviewed by almatvee (Reviewer).

Thank you for the review @sashamatveev. For a moment I was thinking whether I 
should withdraw this PR because your manual run already narrowed down the 
exception stacktrace. But I will go ahead with the merge so as to allow any 
future failures to generate this root cause information and see if it 
consistently fails due to the same error.

-------------

PR: https://git.openjdk.java.net/jdk/pull/6491

Reply via email to