Java Version: 1.6.0-beta-b58
Platform: windowsXPpro with sp2.
Graphic card: Nvidia GeForce6600 with driver version: 81.85
1024X768 and 32 bit color depth.
The host: jfcsqe_earth.sfbay in 2d-sqe lab with two monitors set up.
It is Pentium 4 with cpu 1.5GHZ, 256 MB
Problem:
When run multiMoniotr tests in mustang recent builds, say b58, some tests got exceptions as OutOfMemoryError: Java heap space
It is OK with tiger and tiger update builds, 1.5.0-fcs-b64 and 1.5.0_05-b05
Trace back to mustang b46, still got exceptions.
The machine is newly updated with Nvidi driver 81.85 which released on Oct 20th,2005
It may be a driver bug, I run b58 with the same tests in Matrox G450 card in win2k with multiMonitor set up, they are OK.
Here are the three tests:
CreateFrameVirtualScreenTest, CreateDialogVirtualScreenTest, CreateWindowVirtualScreenTest
The exceptions as followings:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at sun.awt.windows.WRobotPeer.getRGBPixels(WRobotPeer.java:59)
at java.awt.Robot.createScreenCapture(Robot.java:298)
at MultiScreenCaptureTest.captureScreen(MultiScreenCaptureTest.java:107)
at CreateFrameVirtualScreenTest.createFrame(CreateFrameVirtualScreenTest.java:134)
at CreateFrameVirtualScreenTest.<init>(CreateFrameVirtualScreenTest.java:55)
at CreateFrameVirtualScreenTest.main(CreateFrameVirtualScreenTest.java:149)
How to reproduce:
Run one of the three tests by mustang recent build in the machine, you will see the exception, it can be reproducible all times.
The test case is attached.
This does not look like a driver issue. I am able to reproduce this on other multimon config (WinXP) which use ATI Rage Pro and Intel Onboard graphics controller. I have uptated my Nvidia driver to 81.94 and ran the test with Tiger-FCS as well as Mustang-b59/b58 and monitored the application through JConsole. On Tiger-FCS, the Mem usage graph appeared more or less like a Saw-Tooth whereas on Mustang-b59, it appears like a stair-case. The video driver and the machine are the same. Hence it looks like some regression introduced before b58. This is not reproducible on Solaris with Mustang-b59.
If you run the attached test on a single mon app, you may not actually get OutOfMemError since the app terminates before it could exhaust the heap. But it is very obvious on multi-mon configs.