<AWT Dev> RFR: 8225116: Test OwnedWindowsLeak.java intermittently fails
Sergey Bylokhov
serb at openjdk.java.net
Sat Nov 7 07:09:06 UTC 2020
On Sat, 7 Nov 2020 06:55:09 GMT, Sergey Bylokhov <serb at openjdk.org> wrote:
> This test rarely fails in the past on some configurations but was never a problem listed, and according to the history of CI, it fails 2 times on its own this year.
>
> There are two possible reasons for the failure:
> 1. At that time we had a memory leak, which was fixed.
> 2. The test works too fast and it was not enough time for GC to eliminate 1000 windows.
>
> To make the future evaluation simpler I enhanced the test and make it stricter, see some comments inline.
test/jdk/java/awt/Window/OwnedWindowsLeak/OwnedWindowsLeak.java line 74:
> 72: for (WeakReference<Window> ref : children)
> 73: {
> 74: while (ref.get() != null) {
Will wait till the end of the test and log what window is leaked. If it fails then it will be 100% product bug.
test/jdk/java/awt/Window/OwnedWindowsLeak/OwnedWindowsLeak.java line 92:
> 90: }
> 91: catch (Exception z)
> 92: {
If the field will be removed/renamed the test should be reworked.
test/jdk/java/awt/Window/OwnedWindowsLeak/OwnedWindowsLeak.java line 87:
> 85: while (ownersChildren.size() > 0)
> 86: {
> 87: System.out.println("ownersChildren = " + ownersChildren);
This private list is cleared via the DIsposer mechanism, which may require additional time. If it fails then it will be 100% product bug.
-------------
PR: https://git.openjdk.java.net/jdk/pull/1105
More information about the awt-dev
mailing list