JDK-4973362 : Severe performance degradation from 1.3.x to 1.4.x for Z-order switching in appl
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 1.4.2_03
  • Priority: P1
  • Status: Resolved
  • Resolution: Fixed
  • OS: windows_2000
  • CPU: x86
  • Submitted: 2003-12-31
  • Updated: 2003-12-31
  • Resolved: 2003-12-31
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.
Other
5.0 betaFixed
Related Reports
Relates :  
Description
The customer has a multi-tabbed application as an applet used in their product.
In the UI they sometimes have to change the z-order of panels. To do that they remove the panel from the container and add it back at the 0th index. When switching between tabs, or even while updating any z-order of any awt component in the applet the CPU usage shoots up to 100% and the browser stalls for 10-30 seconds. The same applets work fine with the Microsoft VM plugin.
After some testing it was concluded that there is a performance regression over 1.3.x ,where no such issue is seen.
I tried to simulate the problem with various JRE:
1.4.2_03  	  = Problem in performance
1.4.2_02  	  = Problem in performance
1.4.2_01  	  = Problem in performance
1.4.2     	  = Problem in performance
1.4.1_05  	  = Problem in performance
1.4.0_02 	  = Problem in performance
1.3.1_09(Last FCS)= Working
1.3.1_04          = Working  

There is no issue in the 1.5b32 JRE either. But 1.5 can not be recommended to the customer as they have to go live within a month.
The CPU usage problem exists for IE, Mozilla as well as for Netscape.Clearly a JRE-plugin issue.

The attached Java source and HTML can be used to simulate the issue. Clicking on the 'Next' button of the applet will change the z-order one of the two panels in the applet.
If you try to access the same HTML/applet on a unix machine there is no performance issue with the same JRE version, however on windows the CPU usage just shoots up.
###@###.### 2003-12-30
###@###.### 2003-12-30

One more thing, the CPU usage issue is solved with swings, but since it requires the customer to re-write their application(both for converting from awt to swings, and for rewriting z-order switching), its not a viable solution. They want their application to run as-is, as it did in Microsoft VM.
###@###.### 2003-12-30

Comments
CONVERTED DATA BugTraq+ Release Management Values COMMIT TO FIX: tiger-beta FIXED IN: tiger-beta INTEGRATED IN: tiger-beta
14-06-2004

EVALUATION This is most likely the same bug as 4745222 which is fixed in tiger. ###@###.### 2003-12-31 I verified that this is indeed the same bug as 4745222. Closing this bug as it is fixed see 4745222. ###@###.### 2003-12-31
31-12-2003