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!

Performance issue on ADF UI Querying JPS_ATTRS tables

User_3UO34Sep 11 2019 — edited Sep 11 2019

Hi All,

We are using Oracle ADF Jdeveloper and weblogic server versions 12.2.1.3. And our web logic server security policy store is set to use Database.

In our application we have very fine grained security(almost 1000+ roles). On UI we disable or render components based on the assigned roles on these security.

Observed that when the user logs into system first time for that session the initial action is causing a lot of delay. When ran the Java Flight Recording to check the issue, I see below queries are run tens of thousands of times(based on the number of users in the system multiplied by the roles we have).

Please let me know if any one faced this kind of issue and is there any way we can load these roles data on Application restart or cache the data so that this don't happen every time a user logs into system.

SELECT /*+ FIRST_ROWS(10) */ attr.* FROM JPS_ATTRS attr, JPS_DN DN WHERE DN.PARENTDN = ? AND DN.ENTRYID = attr.JPS_DN_ENTRYID and exists ( select /*+ INDEX(A IDX_CT_5_ATTRVAL) */ 1 from CT_5 A where ( A.JPS_DN_ENTRYID = DN.entryid ) and ( A.attrval = ? )) and attr.ATTRNAME in (?,?,?,?,?,?,?,'dn')

SELECT /*+ FIRST_ROWS(10) */ attr.* FROM JPS_ATTRS attr, JPS_DN DN WHERE DN.PARENTDN = ? AND DN.ENTRYID = attr.JPS_DN_ENTRYID and exists ( select 1 from CT_9_1 A where ((A.JPS_DN_ENTRYID = DN.ENTRYID) and A.attrval = ?)) and (( attr.ATTRNAME in (?,?,?,?,?,?,?,?,'dn')) OR (attr.attrval like ? and ( attr.attrname = ? or attr.attrname = ? or attr.attrname = ?)))

jfr.png

Comments
Post Details
Added on Sep 11 2019
1 comment
379 views