[jdk8u-dev] RFR: 8295164: JDK8 jdi tests should not use tasklist command on Windows
Severin Gehwolf
sgehwolf at openjdk.org
Wed Oct 12 17:25:17 UTC 2022
On Tue, 11 Oct 2022 16:03:40 GMT, zzambers <duke at openjdk.org> wrote:
> Shell jdi tests are currently failing on windows. These tests are part of jdk_tier1.
>
> **Problem:**
> Tests fail because ShellScaffold.sh uses (native) tasklist command to check if process with given PID is alive. However this no longer works, since PIDs by Cygwin/Msys2 are no longer same as native Windows PIDs [1][2].
>
> **Solution:**
> Fixed by switching to ps command. Original comment says tasklist was used due to ps sometimes missing some processes. This could be because ps, by default, only shows cygwin processes. I added -W argument to also show native windows processes [3] and I have seen no problems. Fix is targeted for JDK8, since newer JDKs migrated to java based tests (in several steps [4][5][6][7]...), but i think backporting all of that work, just to fix this issue would be overkill. (However nothing prevents anyone from doing so in the future, if desired.)
>
> **Testing:**
> With this fix jdk_tier1 passes for me on Windows.
>
> [1] https://github.com/msys2/MSYS2-packages/issues/1724
> [2] https://cygwin.com/git/?p=newlib-cygwin.git;a=commit;h=b5e1003722cb14235c4f166be72c09acdffc62ea
> [3] https://www.cygwin.com/cygwin-ug-net/ps.html
> [4] https://bugs.openjdk.org/browse/JDK-8209109
> [5] https://bugs.openjdk.org/browse/JDK-8209604
> [6] https://bugs.openjdk.org/browse/JDK-8210243
> [7] https://bugs.openjdk.org/browse/JDK-8210760
It would make sense to add it here, since it would show what you say (i.e. that it's passing now)
-------------
PR: https://git.openjdk.org/jdk8u-dev/pull/133
More information about the jdk8u-dev
mailing list