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 Issues - LOV from SharedAM

Srini MadApr 4 2018 — edited Apr 5 2018

Jdev: 12.2.1.2

I am seeing an issue in our product where one of the LOV items responds really slow. This is not reproducible in lower environments.

The LOB is populated using a list binding based on a view accessor on a Shared Application Module View Instance. The code for View Accessor in View Object is as below (note that RowLevelBinds=false).

   <ViewAccessor

      Name="DepartmentVA"

      ViewObjectName="com.myComp.app.model.vo.DepartmentView"

      AMUsageName="MySharedAppModuleAppInstance"

      ViewInstanceName="DeparmentVO"

      RowLevelBinds="false"/>

We are detecting this slowness in App Dynamics monitoring that shows that this one lov has taken 47.8 seconds due to a wait on thread.

  FacesServlet.service:651(107 ms self time, 47904 ms total time)

   EmployeeVORowImpl.getAttrInvokeAccessor:1508(0 ms self time, 47496 ms total time)

    EmployeeVORowImpl$AttributesEnum$61.get:629(0 ms self time, 47496 ms total time)

     EmployeeVORowImpl.getDepartmentVA:1487(0 ms self time, 47496 ms total time)

      Object.wait:Unknown (47496 ms self time, 47496 ms total time)

I have searched the code exhaustively and ensured that this shared app module VO instance is not being iterated upon manually and is being accessed only via List of Values in View Objects.

Any suggestions on how this can be debugged or any pointers? Is "SharedInstance" property on the View Accessor useful in this regard or could this be

Comments

2926792

select object_name,object_type,status,owner from dba_objects where owner='SYS' and status='INVALID';

 

select comp_name, version, status from dba_registry;

As considered,SYS.KUPU$UTILITIES_INT should be invalid.

connect / as sysdba;

 

SQL> set echo on

SQL> SPOOL /tmp/catalog.log

SQL> @catalog.sql <--------------$ORACLE_HOME/rdbms/admin

SQL> SPOOL off

SQL> SPOOL /tmp/catproc.log

SQL> @catproc.sql <--------------$ORACLE_HOME/rdbms/admin

SQL> SPOOL off

SQL> SPOOL /tmp/utlrp.log

SQL> @utlrp.sql <--------------$ORACLE_HOME/rdbms/admin

SQL> SPOOL off

 

Execute utlrp.sql script for multiple times like 5 times in 3 minute interval.

Wesley D-Oracle

The direct approach:

sqlplus / as sysdba
@?/rdbms/admin/prvthpui.plb
@?/rdbms/admin/prvtbpui.plb
alter package KUPW$WORKER compile body;

Confirm if "KUPU$UTILITIES_INT" has successfully validated.

1 - 2
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on May 3 2018
Added on Apr 4 2018
1 comment
205 views