2009/06/08 UPDATE: I got answer from Oracle, this problem is not reproduced anymore in their internal latest build.
2009/06/12 UPDATE: Additional Helpful workaround was posted on From Developers To Developers blog.
Our team have reproduced performance problem in JDeveloper 11g IDE while developing ADF applications. This problem seems so big, that it can crash JDeveloper 11g in 5 minutes by returning 'Low Memory Message'. In this post I will describe how to reproduce IDE performance problem and will provide sample application as test case. You can reproduce bug in latest JDeveloper 11g release - Build JDEVADF_MAIN.BOXER_GENERIC_090328.0229.5205. It was logged on Metalink in November 2008, but not fixed still (BUG 7601410).
You can download developed sample test case where you can reproduce 'Low Memory Message' in 5 minutes - ViewControllerPerformance.zip. Sample is really simple, it contains ADF BC from HR schema and one JSPX page, one entry in DataBindings.cpx.
When opening application in JDeveloper 11g, in the beginning IDE behaves normally, it consumes just as usual around 300 MB:
Here is structure of sample application, really nothing complex:
Nothing complex except two property bundle files - buttons.properties and labels.properties. Those files contain around 1000 entries each, and you will see now what problems it creates. Im using couple of entries from those files in main.jspx and just by opening this page I'm getting doubled memory usage up to around 800 MB:
I have tried to open just one Expression Builder on main.jspx:
And I got 1200 MB used in 3 minutes:
Same time I got 'Low Memory Message' in JDeveloper 11g IDE:
The reason for this is large property bundle files and how those files are referenced from JSPX page. When developer puts label from property file on the page, JDeveloper automatically creates following references:
Those references cause JDeveloper 11g IDE to consume memory heavily and run out of memory, especially when property bundle files are big.
If you will comment property bundle files referencing:
JDeveloper 11g IDE will behave as expected, without high memory usage:
I wish described IDE performance bug will be addressed and fixed in next JDeveloper 11g release.
En este capitulo, Andrejus identifica un problema de rendimiento en la herramienta JDeveloper 11g. Se muestra un ejemplo que al ser ejecutada con la herramienta tiene un alto consumo de memoria. Afortunadamente, Andrejus ha enviado a ORACLE sus descubrimientos para una pronta solución del problema.