adoptium / adoptium/aqa-tests

JShellHeapDumpTest fails consistently on Windows

Open
#5,871 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
HTML
Stars
155
Forks
346
Avg merge
2d 9h
Merged PRs (30d)
36

Description

sun/tools/jhsdb/JShellHeapDumpTest.java fails on all jdk-11+ versions
https://ci.adoptium.net/job/Test_openjdk17_hs_extended.openjdk_x86-32_windows_rerun/36/console
```
16:29:24 STDOUT:
16:29:24 Starting Jshell
16:29:24 [JShell]:c:\jenkins\workspace\Test_openjdk17_hs_extended.openjdk_x86-32_windows_rerun\jdkbinary\j2sdk-image\bin\jshell.exe -J-ea -J-esa -J-Xmx512m -J-Duser.language=en -J-Duser.country=US
16:29:24 [JShell] | Welcome to JShell -- Version 17.0.14
16:29:24 [JShell] | For an introduction type: /help intro
16:29:24 Jshell Started in 1307ms
16:29:24 Starting jmap against 8620
16:29:24 [2025-01-15T16:29:15.837032300Z] Gathering output for process 65952
16:29:24 [2025-01-15T16:29:16.102593400Z] Waiting for completion for process 65952
16:29:24 [2025-01-15T16:29:16.102593400Z] Waiting for completion finished for process 65952
16:29:24 Output and diagnostic info for process 65952 was saved into 'pid-65952-output.log'
16:29:24 jhsdb jmap stdout:
16:29:24 Attaching to process ID 8620, please wait...
16:29:24
16:29:24 jhsdb jmap stderr:
16:29:24 Error attaching to process: Windbg Error: WaitForEvent failed! (hr: 0x80004002)
16:29:24 sun.jvm.hotspot.debugger.DebuggerException: Windbg Error: WaitForEvent failed! (hr: 0x80004002)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal.attach0(Native Method)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal.attach(WindbgDebuggerLocal.java:152)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.attachDebugger(HotSpotAgent.java:651)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.setupDebuggerWin32(HotSpotAgent.java:549)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.setupDebugger(HotSpotAgent.java:366)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.go(HotSpotAgent.java:337)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.attach(HotSpotAgent.java:142)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.tools.Tool.start(Tool.java:203)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.tools.Tool.execute(Tool.java:134)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.tools.JMap.main(JMap.java:202)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.SALauncher.runJMAP(SALauncher.java:340)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.SALauncher.main(SALauncher.java:500)
16:29:24
16:29:24
16:29:24 ###### End of all output:
16:29:24 Jshell not alive
16:29:24 STDERR:
16:29:24 [JShell] jshell> Exception in thread "main" java.io.IOError: java.io.IOException: The pipe is being closed
16:29:24 [JShell] at jdk.internal.le/jdk.internal.org.jline.keymap.BindingReader.readCharacter(BindingReader.java:170)
16:29:24 [JShell] at jdk.internal.le/jdk.internal.org.jline.keymap.BindingReader.readBinding(BindingReader.java:110)
16:29:24 [JShell] at jdk.internal.le/jdk.internal.org.jline.keymap.BindingReader.readBinding(BindingReader.java:61)
16:29:24 [JShell] at jdk.internal.le/jdk.internal.org.jline.reader.impl.LineReaderImpl.doReadBinding(LineReaderImpl.java:924)
16:29:24 [JShell] at jdk.internal.le/jdk.internal.org.jline.reader.impl.LineReaderImpl.readBinding(LineReaderImpl.java:957)
16:29:24 [JShell] at jdk.jshell/jdk.internal.jshell.tool.ConsoleIOContext$2.readBinding(ConsoleIOContext.java:172)
16:29:24 [JShell] at jdk.internal.le/jdk.internal.org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:652)
16:29:24 [JShell] at jdk.internal.le/jdk.internal.org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:468)
16:29:24 [JShell] at jdk.jshell/jdk.internal.jshell.tool.ConsoleIOContext.readLine(ConsoleIOContext.java:248)
16:29:24 [JShell] at jdk.jshell/jdk.internal.jshell.tool.JShellTool.getInput(JShellTool.java:1275)
16:29:24 [JShell] at jdk.jshell/jdk.internal.jshell.tool.JShellTool.run(JShellTool.java:1209)
16:29:24 [JShell] at jdk.jshell/jdk.internal.jshell.tool.JShellTool.start(JShellTool.java:995)
16:29:24 [JShell] at jdk.jshell/jdk.internal.jshell.tool.JShellToolBuilder.start(JShellToolBuilder.java:261)
16:29:24 [JShell] at jdk.jshell/jdk.internal.jshell.tool.JShellToolProvider.main(JShellToolProvider.java:120)
16:29:24 [JShell] Caused by: java.io.IOException: The pipe is being closed
16:29:24 [JShell] at java.base/java.io.FileInputStream.read0(Native Method)
16:29:24 [JShell] at java.base/java.io.FileInputStream.read(FileInputStream.java:228)
16:29:24 [JShell] at jdk.internal.le/jdk.internal.org.jline.utils.NonBlockingInputStreamImpl.run(NonBlockingInputStreamImpl.java:209)
16:29:24 [JShell] at java.base/java.lang.Thread.run(Thread.java:840)
16:29:24 stdout: [Attaching to process ID 8620, please wait...
16:29:24 ];
16:29:24 stderr: [Error attaching to process: Windbg Error: WaitForEvent failed! (hr: 0x80004002)
16:29:24 sun.jvm.hotspot.debugger.DebuggerException: Windbg Error: WaitForEvent failed! (hr: 0x80004002)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal.attach0(Native Method)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.debugger.windbg.WindbgDebuggerLocal.attach(WindbgDebuggerLocal.java:152)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.attachDebugger(HotSpotAgent.java:651)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.setupDebuggerWin32(HotSpotAgent.java:549)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.setupDebugger(HotSpotAgent.java:366)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.go(HotSpotAgent.java:337)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.HotSpotAgent.attach(HotSpotAgent.java:142)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.tools.Tool.start(Tool.java:203)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.tools.Tool.execute(Tool.java:134)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.tools.JMap.main(JMap.java:202)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.SALauncher.runJMAP(SALauncher.java:340)
16:29:24 at jdk.hotspot.agent/sun.jvm.hotspot.SALauncher.main(SALauncher.java:500)
16:29:24
16:29:24 ]
16:29:24 exitValue = 1
16:29:24
16:29:24 java.lang.RuntimeException: Test ERROR java.lang.RuntimeException: Expected to get exit value of [0]
16:29:24
16:29:24 at JShellHeapDumpTest.launch(JShellHeapDumpTest.java:82)
16:29:24 at JShellHeapDumpTest.launch(JShellHeapDumpTest.java:97)
16:29:24 at JShellHeapDumpTest.testHeapDump(JShellHeapDumpTest.java:133)
16:29:24 at JShellHeapDumpTest.main(JShellHeapDumpTest.java:194)
16:29:24 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
16:29:24 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
16:29:24 at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
16:29:24 at java.base/java.lang.reflect.Method.invoke(Method.java:569)
16:29:24 at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
16:29:24 at java.base/java.lang.Thread.run(Thread.java:840)
16:29:24 Caused by: java.lang.RuntimeException: Expected to get exit value of [0]
16:29:24
16:29:24 at jdk.test.lib.process.OutputAnalyzer.shouldHaveExitValue(OutputAnalyzer.java:489)
16:29:24 at JShellHeapDumpTest.launch(JShellHeapDumpTest.java:80)
16:29:24 ... 9 more
16:29:24
16:29:24 JavaTest Message: Test threw exception: java.lang.RuntimeException: Test ERROR java.lang.RuntimeException: Expected to get exit value of [0]
```

Ref: https://github.com/adoptium/aqa-tests/issues/5852#issuecomment-2593073381

Contributor guide

Open the contributing guide

Research direction

Start with sun/tools/jhsdb/JShellHeapDumpTest.java, especially the launch and testHeapDump locations reported at lines 80-133. Reproduce the test on Windows and inspect the jhsdb jmap output showing the Windbg attach failure, then review the referenced AQA issue comment. Done means the test completes with jhsdb jmap exit value 0 and no JShell termination failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
operating-systems, testing
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.