JDK-8192953 : sun/management/jmxremote/bootstrap/*.sh tests fail with error : revokeall.exe: Permission denied
  • Type: Bug
  • Component: core-svc
  • Sub-Component: java.lang.management
  • Affected Version: 10,11
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • OS: windows
  • CPU: x86
  • Submitted: 2017-12-04
  • Updated: 2020-10-12
  • Resolved: 2018-06-28
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 11 JDK 12 JDK 8 Other
11 b20Fixed 12Fixed 8u270Fixed openjdk8u272Fixed
Related Reports
Relates :  
Description
JPRT log:

http://sthjprt.uk.oracle.com/archives/2017/12/2017-12-04-030052.daholme.jdk-hs/logs/windows_x64_6.3-product-c2-jdk_management.log.FAILED.log

STDERR:
C:/jprt/T/P1/030052.daholme/s/closed/test/jdk/sun/management/jmxremote/bootstrap/GeneratePropertyPassword.sh: line 110: C:/jprt/T/P1/030052.daholme/s/closed/test/jdk/sun/management/jmxremote/bootstrap/../../../../../../../open/test/jdk/sun/management/windows/revokeall.exe: Permission denied
C:/jprt/T/P1/030052.daholme/s/closed/test/jdk/sun/management/jmxremote/bootstrap/GeneratePropertyPassword.sh: line 110: C:/jprt/T/P1/030052.daholme/s/closed/test/jdk/sun/management/jmxremote/bootstrap/../../../../../../../open/test/jdk/sun/management/windows/revokeall.exe: Permission denied
Error: Password file read access must be restricted: C:/jprt/T/P1/030052.daholme/s/closed/test/testoutput/jdk_management/JTwork/test_jdk/classes/sun/management/jmxremote/bootstrap/readwrite_forbids_create_ok.password
jdk.internal.agent.AgentConfigurationError
	at jdk.management.agent/sun.management.jmxremote.ConnectorBootstrap.checkPasswordFile(ConnectorBootstrap.java:590)
	at jdk.management.agent/sun.management.jmxremote.ConnectorBootstrap.startRemoteConnectorServer(ConnectorBootstrap.java:436)
	at jdk.management.agent/jdk.internal.agent.Agent.startAgent(Agent.java:450)
	at jdk.management.agent/jdk.internal.agent.Agent.startAgent(Agent.java:621)
Comments
Approving this, but, from the change, it looks like JDK-8025886 was reverted by this change anyway. Is that correct? If so, we could have skipped JDK-8025886.
10-08-2020

Fix Request (8u): Backport to 8u requested because it is a part of 8u271-oracle. Patch depends on JDK-8025886 and applies cleanly on top of it after path change. Testing: jtreg:sun/management/jmxremote/bootstrap/ on Windows and Linux. 8u changeset with changed path and original attribution: https://cr.openjdk.java.net/~akasko/jdk8u/8192953/8192953_8u.patch
21-07-2020

Why is revokeall.exe checked in to the repository? That violates the OpenJDK rules about no binary files being checked in. It should not be necessary, revokeall.exe should be built as part of the test-image. The current setup is obviously not working in a reliable way.
25-06-2018

This seems to be happening in (nearly?) every mach5 tier5 job. Usually (always?), all three of RmiBootstrapTest.sh, RmiSslBootstrapTest.sh, and ReadWriteForbidsCreateTest.sh fail with Permission denied from revokeall.exe. I wonder if there is some (unintentionally) shared state among these programs, such that they can't be safely run concurrently. That would explain the inability to reproduce the failure of ReadWriteForbidsCreateTest.sh, if that was done in isolation, while also explaining the mach5 failure frequency.
23-06-2018

I am closing this bug as not reproducible. If the issue is seen again, please try to reproduce the issue with the above patch before re-opening this bug.
05-02-2018

This issue is not reproducible on my machine. One possible fix would be to grant execute permission to revokeall.exe. If this issue is seen again, can the infra team check if applying below patch fixes the issue? diff -r 97b8bd52f567 closed/test/jdk/sun/management/jmxremote/bootstrap/GeneratePropertyPassword.sh --- a/closed/test/jdk/sun/management/jmxremote/bootstrap/GeneratePropertyPassword.sh Thu Jan 25 09:12:41 2018 +0100 +++ b/closed/test/jdk/sun/management/jmxremote/bootstrap/GeneratePropertyPassword.sh Tue Jan 30 09:30:20 2018 +0000 @@ -103,6 +103,7 @@ sed -f $TMP_FILE $f > $f2 if [ "$OS" = "Windows_NT" ]; then + chmod ug+x $REVOKEALL chown $USER $f2 # Grant this user full access echo Y|$CACLS $f2 \/E \/G $USER:F
30-01-2018