Forum Stats

  • 3,728,705 Users
  • 2,245,678 Discussions
  • 7,853,707 Comments

Discussions

ADF Performance issues after migration from 11g to 12c

Ibrahim Kobeissy
Ibrahim Kobeissy Member Posts: 128 Blue Ribbon
edited March 30 in JDeveloper and ADF

Hello,

I'm on ADF 12.2.1.2.0,

Recently we migrated our application from 11.1.2.3 to 12.2.1.2.0, and we are facing a lot of performance issues, the same screens and the same code is behaving differently between the two applications. most of our issues are related to navigation and when opening popups and when calling taskflows, in the logs we see plenty of errors such as

<oracle.adf.model> <QueryCollection> <finalize> <[23358]  ~ QueryCollection.finlException java.lang.NullPointerException thrown> 

<oracle.adf.model> <JboBeanUtils> <getProperty> <[23358] *** Using bean introspection to lookup value :oper> 

<oracle.adf.model> <QueryCollection> <finalize> <[23359] java.lang.NullPointerException


when debugging we can see that most of the time ADF is releasing and initiating iterators, and since we are facing these kind of errors in the background we suspected that it could be some configuration on the level of the AM or some tuning of the VO that should be done.


for example, if i'm sitting on a screen and i try to open a new popup (taskflow run as popup) we have a big amout of time where ADF is doing stuff in the background before even reaching the called taskflow we can see that every iterator that was in the calling taskflow is being re-executed, refreshed, released, before even getting to the new taskflow.

we also noticed one important thing, for example we have multiple ViewObjects with RowCountThreshold = -1 but in the logs we keep seing logs messages such as

<oracle.adf.model> <ViewRowSetImpl> <initQueryCollection> <[150] Carrying over CappedRowCount

so does this means that ADF is executing count queries although we specified not to do ?

so anyone could help me with this please, or point me at some useful link ?


Regards

Tagged:

Answers

  • dvohra21
    dvohra21 Member Posts: 14,139 Gold Crown
  • Ibrahim Kobeissy
    Ibrahim Kobeissy Member Posts: 128 Blue Ribbon

    Yes we know, but does this mean that the behavior we are getting is normal?

  • Timo Hahn
    Timo Hahn Senior Principal Technical Consultant - Oracle ACE Director Member, Moderator Posts: 36,976 Red Diamond

    No, it means that you have to first migrate your application from 11.211.3 to 11.2.1.4 then you migrate 12.1.3 and finally to 12.2.1.2.

    After each of the steps, you need to do extended testing to make sure everything works OK. Don't migrate to the next version without investigating each problem you find. It might be that you find some info on the problem telling you that you should use a newer version. In this case, you donÄt need to fix the problem. All other problems need to be addressed in the version you are using.

    Timo


  • dvohra21
    dvohra21 Member Posts: 14,139 Gold Crown

    Migration is just opening a project in a new version. Installing intermediate JDev versions is needed.

  • Ibrahim Kobeissy
    Ibrahim Kobeissy Member Posts: 128 Blue Ribbon

    Thank you both for the replies, but now regarding the problems I’m describing does it ring a bell ? Anyone have any ideas on how to solve these issues ?

  • Timo Hahn
    Timo Hahn Senior Principal Technical Consultant - Oracle ACE Director Member, Moderator Posts: 36,976 Red Diamond

    I personally have not seen such an error. From my point of view, it doesn't make sense to invest time into fixing this, when proper migration can do the trick.

    If you want to skip the testing after each step of the migration, it's your decision. However, if you run into problems (like the one you currently see) you have to find out which version the problem came up with first.


    Timo


  • Eric v.M.
    Eric v.M. Member Posts: 20 Bronze Badge
    edited April 14

    Ibrahim,

    Regarding: "for example, if i'm sitting on a screen and i try to open a new popup (taskflow run as popup) we have a big amout of time where ADF is doing stuff in the background before even reaching the called taskflow we can see that every iterator that was in the calling taskflow is being re-executed, refreshed, released, before even getting to the new taskflow."

    Just a wild guess, take a look at No. 10: https://www.adfpm.com/oracle-adf-performance-tuning-top-10-typical-bottlenecks/

    Hope this helps.

    Regards, Eric

    Ibrahim Kobeissy
Sign In or Register to comment.