Skip to Main Content

Java Development Tools

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Compiling transient expressions on large projects causes loops and leaks

Evert-Jan de BruinAug 5 2016 — edited May 21 2017

Hello,


We have just migrated a large application (hundreds of screens, EO, VO) to ADF 12.2.1.1.

However, we run into some serious issues relating to transient expressions (groovy), one of which we solved with a workaround, but the other is still pending.They are closely related however.

Issue 1 (solved): JDeveloper loops on any transient expression


If there are groovy expressions in a business component, directly in the XML file (for example a view accessor bind variable) then one will get 'compiling TransientExpression' in the messages log of JDeveloper, in a continuous loop. Even if you only have one groovy expression this way, it will keep looping, eating up CPU and memory.

A solution might be to move the groovy expression to a separate BCS file, but the editor of view accessor bind variables *always* stores them in the XML file (this is a bug).

A workaround is to disable the audit rule XML - XML Files - XML Dependency Checking - Reference Not Found Warning  (a.k.a. oracle.ide.xml.brokenref-warning). This will stop JDeveloper from looping.

Issue 2 (NOT solved): JDeveloper eats up all resources during deployment

When deploying the application, JDeveloper also attempts to compile all transientexpressions. Also the JDeveloper console logs the following:

<< instruction selection >>

<< initialization >>

<< initialization >>

<< parsing >>

<< conversion >>

<< conversion >>

<< semantic analysis >>

<< canonicalization >>

This process takes over 5 minutes on my 16 GB machine, meanwhile JDeveloper takes up ALL the memory (it raises to 12 GB usage) and CPU is also at 80%.

I have counted, and we have about 2200 expressions in our application..

Since most of them are bind parameter expressions, and the editor does not support saving them in separate BCS files, I am really stuck here. Of course I will log a bug with Oracle support, but meanwhile I was wondering if anyone knows a workaround to this issue?

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jun 18 2017
Added on Aug 5 2016
36 comments
5,611 views