SlideShare a Scribd company logo
1 of 20
Download to read offline
Consolidated Report of the Key Findings
"Demo - Premium resolution(89)"
The report focuses on the key indicators of the monitored case and significantly reduces the time required to analyze collected information and identify bottlenecks.
It features the areas that influence performance of the application the most, whether it is individual execution or cumulative impact on the system due to high frequency of
use, and/or areas that create abnormally high load on the system as a whole.
Thresholds
Name Red Alert Yellow Alert
Heavy methods: 10000 (ms) 5000 (ms)
Heavy pages: 10000 (ms) 5000 (ms)
Heavy SQLs: 3000 (ms) 1000 (ms)
Too Many SQLs: 300 (count) 100 (count)
Heavy Threads: 25 (cpu %) 3 (cpu %)
System Alerts
Alerts section lists events with execution time or resource utilization exceeding predefined thresholds.
To avoid excessive alerts while monitoring the cases impacted by significant performance degradation, the default threshold settings reflect behavior of an application performing worse than average.
If the default thresholds values render too much information or too few results, they could be manually adjusted in 'Manage Case and Thresholds Settings' section of the analyzed case. If required, modified
thresholds could be reset back to their default values.
6 methods with max execution time longer than 10 sec
3 methods with max execution time longer than 5 sec and less than 10 sec
2 pages with max execution time longer than 10 sec
3 pages with max execution time longer than 5 sec and less than 10 sec
1 SQL statement that was executed more that 300 times
Threads 13 consuming on average more than 25% cpu each
Threads 34, 70 consuming on average more than 3% cpu and less han 25% cpu each
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 1
Resources Utilization - CPU
The graph below shows total general CPU utilization by Java Virtual Machine (JVM), as well as consumption by the most demanding individual threads within JVM, as the percentage of the total server's
CPU.
In HTML format, dragging mouse along the thread's graph will provide additional details at every point with significant JVM consumption. If utilization of the CPU exceeds 70% for the substantial amount of
monitored time, application's performance could be constrained by the availability of the systems resources; hence, appropriate server scaling considerations might be required.
JVM CPU Usage Peak - 31% Avg - 8%
Threads 13 consuming on average more than 25% cpu each
Threads 34, 70 consuming on average more than 3% cpu and less han 25% cpu each
JVM CPU by Thread Utilization
Individual Threads CPU against JVM CPU
20:20:15 20:21:30 20:21:45 20:22:00 20:22:15 20:22:30 20:22:45 20:23:00 20:23:15 20:23:30 20:23:45 20:24:00 20:24:30
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 2
Resources Utilization - Memory
The graph below shows memory utilization by the Java Virtual Machine.
Memory consumption is expected to grow until it is released by the garbage collector (GC). Up and down fluctuations are normal and indicate that the system is healthy. However, behavior when memory
drops to increasingly higher level and oscillations grow shorter, while top line lingers around maximal available memory, may indicate memory leak in the system, or simply higher demand that JVM can
provide. In such case, the execution of the application is constrained by total available memory and JVM might eventually crash.
JVM Memory Usage Peak - 396MB Avg - 247MB
JVM Memory Utilization
Max Available Memory 1029 MB
20:21:30 20:22:00 20:22:30 20:23:00 20:23:30 20:24:00 20:24:30 20:25:00 20:25:30
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 3
User Experience
The graph below shows the top-level server-side execution that comes in response to the user actions or client-side scripts, which contributed to user wait time.
Additional factors that may impact user experience are network latency and browser-side processing time. The execution time shown on the graph represents minimum user wait time which could be
achieved when user has adequately equipped workstation and negligible network delays.
2 pages with max execution time longer than 10 sec
3 pages with max execution time longer than 5 sec and less than 10 sec
Top 20 displayed.
Page/Method User's IP Full Duration (ms)
jsp_servlet._demo._lib._xschemes._flow.__assignmentmanagerscheme._jspService 192.168.10.124 50817
jsp_servlet._demo._lib._uicomposition.__navigationbar._jspService 192.168.10.124 50813
jsp_servlet._acme._jsp._pcomp.__tray_container._jspService 192.168.10.124 9284
jsp_servlet._demo._lib._xschemes._tray.__tray._jspService 192.168.10.124 8351
jsp_servlet._acme._jsp._demo.__login._jspService 192.168.10.124 5006
User Experience Server Side Execution
20:21:30 20:21:45 20:22:00 20:22:15 20:22:30 20:22:45 20:23:00 20:23:15 20:23:30 20:23:45 20:24:00 20:24:15 20:24:30
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 4
Heavy Methods
The section lists twenty methods with the longest execution time, along with the details pinpointing the reasons.
For each of the listed in the table methods, report offers additional supporting information about repeatedly executed sub-methods, methods with highest net execution time, methods causing the highest
CPU utilization, total time spent on database queries and the Heaviest SQL queries.
6 methods with max execution time longer than 10 sec
3 methods with max execution time longer than 5 sec and less than 10 sec
Top 20 displayed.
Method Full Duration (ms)
weblogic.servlet.internal.ServletRequestImpl.run 50821
weblogic.servlet.internal.ServletRequestImpl.run 50817
com.prefvendor.mat.schemeext.comp.Reserve$ClearReserveMonitor.run 30007
com.prefvendor.mat.schemeext.comp.Reserve$ClearReserveMonitor.run 30001
weblogic.servlet.internal.ServletRequestImpl.run 9406
weblogic.servlet.internal.WebAppModule.start 7238
weblogic.servlet.internal.ServletRequestImpl.run 6672
HEAVY METHODS F: Full Duration TF: Total Full Duration N: Net Duration TN: Total Net Duration C: Count
weblogic.servlet.internal.ServletRequestImpl.run F:50821 ms N:0 ms
Execution highlights
Repeated Sub Method Execution
com.prefvendor.plm.PlProcEx.getVarMetaInfo TF:29466 ms C:7738
com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.getComplex TF:16446 ms C:7737
com.prefvendor.pls.utils.DBUtils.executeQuery TF:13026 ms C:7737
com.prefvendor.plm.PlProcEx.getComplexInfoBrand TF:16578 ms C:7736
com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.lookupComplexInfoBrand TF:16549 ms C:7736
com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.lookupComplexInfoBrand TF:16535 ms C:7736
com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.getComplexFromComplexName TF:16522 ms C:7736
com.prefvendor.plm.PlFlowEx.getComplexInfoBrand TF:34648 ms C:7735
com.prefvendor.plm.db.db.XMLStorageMappingUtils.getDefaultXMLInstance TF:8368 ms C:7600
com.prefvendor.schemestorage.SysSchemesStorageService.getXMLDocument TF:8342 ms C:7595
Heavy Method by Total Full
com.prefvendor.mat.scheme.ControlStub.doStartStub TF:50688 ms TN:0 ms C:2
dbyte.demo.CalculateSalaryIncreaseEx.execute TF:50479 ms TN:3 ms C:4
com.prefvendor.schemeengine.connector.inforoot.InfoConnectorExecutor.execute TF:50479 ms TN:0 ms C:4
dbyte.demo.CalculateSalaryIncreaseEx.method TF:50476 ms TN:9 ms C:4
dbyte.demo.CalculateSalaryIncreaseEx.calculateDepartmentalAdjustments TF:50442 ms TN:80 ms C:4
com.prefvendor.plm.PlFlowEx.getComplexInfoValue TF:46270 ms TN:34 ms C:7140
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 5
com.prefvendor.plm.PlFlowEx.getComplexInfoBrand TF:31811 ms TN:36 ms C:7140
com.prefvendor.plm.PlProcEx.getVarMetaInfo TF:26998 ms TN:71 ms C:7140
com.prefvendor.plm.PlProcEx.getComplexInfoBrand TF:15238 ms TN:15 ms C:7140
com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.lookupComplexInfoBrand TF:15211 ms TN:8 ms C:7140
Heavy Method by Total Net
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:10389 ms TN:10389 ms C:7146
com.prefvendor.pls.utils.SysPathUtils.getValue TF:6610 ms TN:6603 ms C:6438
com.prefvendor.tools.infomodel.imp.DBImpl.loadDocument TF:6058 ms TN:6058 ms C:6017
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:5930 ms TN:5930 ms C:5926
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:3320 ms TN:3320 ms C:3192
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:1102 ms TN:1102 ms C:607
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:887 ms TN:887 ms C:598
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:829 ms TN:829 ms C:829
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:594 ms TN:594 ms C:584
com.prefvendor.tools.infomodel.imp.DBImpl.loadDocument TF:592 ms TN:592 ms C:586
Heavy by CPU usage
Total CPU time: 23.85 sec. Total Average CPU Server Utilization: 8.98%
CPU Time 1.61 sec CPU Server Utilization 15.36%
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root)
CPU Time 1.73 sec CPU Server Utilization 14.25%
java.io.WinNTFileSystem.getBooleanAttributes(Native Method)
java.io.File.exists(File.java:733)
sun.misc.URLClassPath$FileLoader.getResource(URLClassPath.java:999)
sun.misc.URLClassPath$FileLoader.findResource(URLClassPath.java:966)
sun.misc.URLClassPath.findResource(URLClassPath.java:146)
CPU Time 1.65 sec CPU Server Utilization 8.28%
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root)
CPU Time 1.58 sec CPU Server Utilization 10.00%
com.prefvendor.imp.session.SessionHandle.getDBName(Unknown Root)
com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.getComplexReserveComptroller(Unknown Root)
com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.getComplex(Unknown Root)
com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.getComplexFromComplexName(Unknown Root)
com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.lookupComplexInfoBrand(Unknown Root)
CPU Time 1.83 sec CPU Server Utilization 9.40%
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root)
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 6
CPU Time 1.64 sec CPU Server Utilization 10.00%
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root)
CPU Time 1.67 sec CPU Server Utilization 10.23%
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root)
CPU Time 1.58 sec CPU Server Utilization 7.00%
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root)
CPU Time 1.64 sec CPU Server Utilization 10.12%
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root)
CPU Time 1.48 sec CPU Server Utilization 7.00%
java.net.SocketOutputStream.socketWrite0(Native Method)
java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
java.net.SocketOutputStream.write(SocketOutputStream.java:1311)
com.prefvendor.imp.util.io.DataPipe.writeSocket(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.write(Unknown Root)
Total SQL execution
F:14480 ms C:8342 28.49% of the method execution
Repeated SQL execution
select link_id, modify_date from plm_brand_info where complex_name = 'acme_complex_hinfo' TF:13007 ms C:7736
weblogic.servlet.internal.ServletRequestImpl.run F:50817 ms N:0 ms
Execution highlights
Repeated Sub Method Execution
com.prefvendor.mat.SessionSync.lock0 TF:50803 ms C:3
com.prefvendor.mat.SessionSync.lock TF:50803 ms C:3
com.prefvendor.mat.scheme.SchemeProcor.invokeMethod TF:50800 ms C:2
com.prefvendor.mat.scheme.SchemeProcor.invokeMethod TF:50800 ms C:2
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 7
com.prefvendor.mat.scheme.SchemeProcor.lockSession TF:50799 ms C:2
com.prefvendor.mat.schemeext.comp.Reserve$ClearReserveMonitor.run F:30007 ms N:30007 ms
Execution highlights
Method has no highlights
com.prefvendor.mat.schemeext.comp.Reserve$ClearReserveMonitor.run F:30001 ms N:30001 ms
Execution highlights
Method has no highlights
weblogic.servlet.internal.ServletRequestImpl.run F:9406 ms N:0 ms
Execution highlights
Repeated Sub Method Execution
com.prefvendor.plm.infolist.ComplexUtil.isComplexProcVarVisible TF:267 ms C:241
com.prefvendor.plm.assignmentlist.imp.AssignmentListReservedCollection.prepareOneRow TF:379 ms C:100
com.prefvendor.mat.scheme.ControlStub.schemeatText TF:289 ms C:62
com.prefvendor.mat.scheme.ControlStub.schemeatValue TF:288 ms C:61
com.prefvendor.mat.scheme.ctrl.schemeat.ValueSchemeatterStub.schemeat TF:287 ms C:60
com.prefvendor.mat.schemeext.ctrl.schemexschemesctrl.SysSchemesListValueSchemeatter.schemeat TF:283 ms C:58
com.prefvendor.mat.scheme.ctrl.LinkStub.renderStart TF:287 ms C:57
com.prefvendor.mat.schemeext.ctrl.schemeext.SysSchemesLinkStub.renderLinkStart TF:287 ms C:57
com.prefvendor.mat.schemeext.ctrl.schemexschemesctrl.SysSchemesListValueSchemeatter.schemeatSingleValue TF:278 ms C:53
com.prefvendor.mat.schemeext.ctrl.action.ActionMultiselectCheckboxStub.renderEnd TF:344 ms C:44
Heavy Method by Net
weblogic.servlet.jsp.TagFileClassLoader.findClass F:514 ms N:514 ms
com.prefvendor.tools.infomodel.util.SchemaUtility.getSchema F:273 ms N:273 ms
com.prefvendor.mat.schemeext.ctrl.schemePLMSysSchemesProcorFactory.newInstance F:1745 ms N:245 ms
com.prefvendor.mat.schemeext.ctrl.schemexschemesctrl.SysSchemesAssignmentList.updateControl F:244 ms N:238 ms
weblogic.servlet.jsp.TagFileClassLoader.findClass F:198 ms N:198 ms
com.prefvendor.mat.scheme.ctrl.infobound.DbgridStub.findColumnName F:190 ms N:190 ms
weblogic.servlet.jsp.TagFileClassLoader.findClass F:183 ms N:183 ms
com.prefvendor.plm.db.db.DAOHelper.getStorageMapping F:628 ms N:182 ms
com.prefvendor.mat.schemeext.ctrl.schemexschemesctrl.SysSchemesListValueSchemeatter.schemeat F:178 ms N:175 ms
weblogic.servlet.jsp.TagFileClassLoader.findClass F:150 ms N:150 ms
Heavy Method by Total Full
com.prefvendor.mat.scheme.ControlStub.doEndStub TF:9020 ms TN:8 ms C:3
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 8
com.prefvendor.mat.scheme.ControlStub.doEndStub TF:1533 ms TN:8 ms C:207
weblogic.servlet.jsp.JspClassLoader.loadClass TF:1522 ms TN:0 ms C:19
weblogic.servlet.jsp.JspClassLoader.findClass TF:1522 ms TN:1 ms C:19
weblogic.servlet.jsp.TagFileClassLoader.findClass TF:1521 ms TN:1521 ms C:19
weblogic.servlet.jsp.TagFileClassLoader.loadClass TF:1521 ms TN:0 ms C:19
com.prefvendor.mat.scheme.ControlStub.doStartStub TF:1120 ms TN:1 ms C:98
com.prefvendor.pcomp.schemetray.SysSchemesAssignmentListModule.getAttrDescriptor TF:741 ms TN:0 ms C:2
com.prefvendor.mat.schemeext.action.ActionService.getActionDef TF:579 ms TN:4 ms C:40
com.prefvendor.mat.scheme.ControlStub.getControl TF:519 ms TN:1 ms C:109
Heavy Method by Total Net
weblogic.servlet.jsp.TagFileClassLoader.findClass TF:1521 ms TN:1521 ms C:19
com.prefvendor.mat.schemeext.action.ActionService.newInstance TF:463 ms TN:463 ms C:18
com.prefvendor.mat.scheme.ctrl.infobound.DbgridStub.findColumnName TF:191 ms TN:191 ms C:2
com.prefvendor.mat.schemeext.ctrl.schemexschemesctrl.SysSchemesListValueSchemeatter.schemeat TF:221 ms TN:177 ms C:43
Heavy by CPU usage
Total CPU time: 3.48 sec. Total Average CPU Server Utilization: 12.59%
CPU Time 2.04 sec CPU Server Utilization 24.49%
java.io.FileInputStream.readBytes(Native Method)
java.io.FileInputStream.read(FileInputStream.java:220)
weblogic.utils.io.DataIO.readFully(DataIO.java:351)
weblogic.utils.io.DataIO.readFully(DataIO.java:328)
weblogic.utils.classloaders.FileSource.getBytesInternal(FileSource.java:80)
CPU Time 0.67 sec CPU Server Utilization 6.90%
java.io.FileInputStream.readBytes(Native Method)
java.io.FileInputStream.read(FileInputStream.java:220)
weblogic.utils.io.DataIO.readFully(DataIO.java:351)
weblogic.utils.io.DataIO.readFully(DataIO.java:328)
weblogic.utils.classloaders.FileSource.getBytesInternal(FileSource.java:80)
Total SQL execution
F:150 ms C:23 1.59% of the method execution
weblogic.servlet.internal.WebAppModule.start F:7238 ms N:1 ms
Execution highlights
Repeated Sub Method Execution
com.prefvendor.imp.util.reflection.proxy.ProxyClassGenerator.methodMethod TF:1750 ms C:1468
com.prefvendor.thirdparty.javassist.CtNewMethod.make TF:1458 ms C:1300
com.prefvendor.thirdparty.javassist.CtNewMethod.make TF:1457 ms C:1300
com.prefvendor.thirdparty.javassist.compiler.Javac.compile TF:1395 ms C:1289
com.prefvendor.thirdparty.javassist.compiler.Javac.compileMethod TF:1201 ms C:1142
com.prefvendor.thirdparty.javassist.compiler.ast.MethodDecl.accept TF:763 ms C:728
com.prefvendor.thirdparty.javassist.compiler.CodeGen.atMethodDecl TF:763 ms C:728
com.prefvendor.thirdparty.javassist.compiler.CodeGen.atMethodBody TF:722 ms C:689
com.prefvendor.thirdparty.javassist.compiler.MemberCodeGen.atTryStmnt TF:714 ms C:681
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 9
com.prefvendor.thirdparty.javassist.compiler.Parser.parseMethod2 TF:274 ms C:264
Heavy Method by Net
com.prefvendor.com.Consumer.getLocalClient F:4122 ms N:874 ms
com.prefvendor.xml.jaxp.PlDocumentBuilderImpl.parse F:221 ms N:219 ms
com.prefvendor.imp.objectprotocol.AbstractObjectProtocol.deserializePersistentBrands F:164 ms N:162 ms
com.prefvendor.xml.jaxp.PlDocumentBuilderFactoryImpl.setAttribute F:88 ms N:88 ms
com.prefvendor.PlNewIntermethodLockImpl.acquire F:98 ms N:86 ms
com.prefvendor.imp.session.SessionFactory.newSession F:424 ms N:82 ms
Heavy Method by Total Full
com.prefvendor.mat.element.AdviceComptroller.getListerners TF:2351 ms TN:0 ms C:3
com.prefvendor.mat.element.AdviceComptroller.getListenersFromConfigFile TF:2351 ms TN:45 ms C:3
com.prefvendor.mat.schemeext.config.HttpConfigReader.loadConfigFiles TF:2002 ms TN:96 ms C:48
com.prefvendor.mat.schemeext.config.HttpConfigReader.loadConfigFiles TF:1885 ms TN:5 ms C:10
com.prefvendor.mat.schemeext.config.HttpConfigReader.loadConfigFiles TF:1222 ms TN:50 ms C:120
com.prefvendor.mat.schemeext.config.ConfigFile.loadXML TF:724 ms TN:6 ms C:459
com.prefvendor.imp.util.reflection.proxy.ProxyClassGenerator.methodInterface TF:713 ms TN:2 ms C:18
com.prefvendor.imp.util.reflection.proxy.ProxyClassGenerator.methodMethod TF:665 ms TN:8 ms C:440
com.prefvendor.mat.schemeext.config.ConfigFile.loadXML TF:664 ms TN:2 ms C:351
com.prefvendor.mat.element.AdviceComptroller$ApplicationEventAdviceSender.notifyStartEventForListener TF:567 ms TN:0 ms C:2
Heavy Method by Total Net
com.prefvendor.xml.jaxp.PlDocumentBuilderImpl.parse TF:427 ms TN:425 ms C:122
com.prefvendor.xml.jaxp.PlDocumentBuilderFactoryImpl.newDocumentBuilder TF:256 ms TN:255 ms C:256
com.prefvendor.xml.jaxp.PlFactoryFinder.find TF:240 ms TN:233 ms C:240
com.prefvendor.xml.jaxp.PlDocumentBuilderFactoryImpl.newDocumentBuilder TF:208 ms TN:208 ms C:206
com.prefvendor.xml.jaxp.PlFactoryFinder.find TF:193 ms TN:188 ms C:193
com.prefvendor.imp.objectprotocol.AbstractObjectProtocol.deserializePersistentBrands TF:167 ms TN:163 ms C:3
com.prefvendor.xml.jaxp.PlDocumentBuilderFactoryImpl.newDocumentBuilder TF:149 ms TN:149 ms C:148
com.prefvendor.xml.jaxp.PlDocumentBuilderImpl.parse TF:139 ms TN:139 ms C:126
com.prefvendor.xml.jaxp.PlFactoryFinder.find TF:134 ms TN:130 ms C:134
com.prefvendor.mat.schemeext.config.HttpConfigReader.loadConfigFiles TF:2002 ms TN:96 ms C:48
Heavy by CPU usage
Total CPU time: 5.05 sec. Total Average CPU Server Utilization: 28.71%
CPU Time 2.12 sec CPU Server Utilization 28.71%
java.net.SocketInputStream.socketRead0(Native Method)
java.net.SocketInputStream.read(SocketInputStream.java:129)
com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root)
com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root)
CPU Time 2.93 sec CPU Server Utilization 28.71%
java.util.zip.ZipFile.getEntry(Native Method)
java.util.zip.ZipFile.getEntry(ZipFile.java:161)
java.util.jar.JarFile.getEntry(JarFile.java:208)
java.util.jar.JarFile.getJarEntry(JarFile.java:191)
sun.misc.URLClassPath$JarLoader.getResource(URLClassPath.java:757)
Total SQL execution
F:45 ms C:7 0.62% of the method execution
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 10
weblogic.servlet.internal.ServletRequestImpl.run F:6672 ms N:1 ms
Execution highlights
Repeated Sub Method Execution
com.prefvendor.PlObject.getFileEx2 TF:780 ms C:40
com.prefvendor.filling.imp.FillingComptroller.getFile TF:763 ms C:40
com.prefvendor.filling.imp.FillingComptroller.namedGetFile TF:345 ms C:40
com.prefvendor.filling.imp.FillingComptroller.getFile TF:345 ms C:40
com.prefvendor.methodmanager.configuration.info.action.service.imp.AssignmentSpaceSelectionMethodDefinitionFactory.getSelectionMethodDefinition TF:1185 ms C:30
com.prefvendor.methodmanager.configuration.info.action.service.imp.AssignmentSpaceSelectionMethodDefinitionFactory.getListSelectionMethod TF:521 ms C:21
com.prefvendor.methodmanager.configuration.info.action.service.imp.ParameterValueSqlListSelectionMethod.execQuery TF:449 ms C:18
com.prefvendor.methodmanager.configuration.info.action.service.imp.ParameterValueSqlListSelectionMethod.setSelectItem TF:447 ms C:16
com.prefvendor.services.set.imp.SetSyncServiceImpl.load TF:158 ms C:12
com.prefvendor.util.synchronization.imp.DestinationPortfolio.getFilling TF:97 ms C:10
Heavy Method by Net
com.prefvendor.plm.app.ReserveComptrollerBuilder.init F:571 ms N:495 ms
com.prefvendor.imp.util.io.InfoPipe.readSocket F:258 ms N:258 ms
com.prefvendor.imp.util.io.InfoPipe.readSocket F:81 ms N:81 ms
com.prefvendor.imp.util.io.InfoPipe.readSocket F:73 ms N:73 ms
Heavy Method by Total Full
com.prefvendor.methodmanager.configuration.set.AssignmentSpaceSetListener.loadConfigurableActions TF:1576 ms TN:33 ms C:2
com.prefvendor.methodmanager.configuration.configmanager.converter.SetConverterFactory.createSetConverter TF:1539 ms TN:15 ms C:2
com.prefvendor.methodmanager.configuration.configmanager.converter.ActionSetItemConverter.loadSetItems TF:1524 ms TN:2 ms C:2
com.prefvendor.methodmanager.configuration.utils.ConfigServiceUtil.getActionFromElement TF:1021 ms TN:29 ms C:7
com.prefvendor.methodmanager.configuration.utils.ConfigServiceUtil.getActionParameter TF:990 ms TN:2 ms C:3
com.prefvendor.methodmanager.configuration.utils.ConfigServiceUtil.getActionParamValue TF:988 ms TN:1 ms C:3
com.prefvendor.methodmanager.configuration.set.AssignmentSpaceSetListener.cacheReroots TF:968 ms TN:0 ms C:2
com.prefvendor.methodmanager.res.AssignmentSpaceConfigureableReroots.cacheReroots TF:968 ms TN:1 ms C:2
com.prefvendor.methodmanager.configuration.info.action.service.imp.AssignmentSpaceSelectionMethodDefinitionFactory.getSelectionMethodDefinition TF:845 ms TN:2 ms C:16
com.prefvendor.PlObject.getFileEx2 TF:780 ms TN:0 ms C:40
Heavy Method by Total Net
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:316 ms TN:316 ms C:17
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:169 ms TN:169 ms C:118
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:122 ms TN:122 ms C:14
com.prefvendor.services.set.imp.RerootWrapper.loadBundleDefinition TF:169 ms TN:105 ms C:4
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:98 ms TN:98 ms C:12
com.prefvendor.util.synchronization.imp.DestinationPortfolio.getFilling TF:97 ms TN:97 ms C:10
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:96 ms TN:96 ms C:12
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:83 ms TN:83 ms C:56
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:81 ms TN:81 ms C:18
com.prefvendor.imp.util.io.InfoPipe.readSocket TF:67 ms TN:67 ms C:47
Total SQL execution
F:611 ms C:59 9.16% of the method execution
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 11
Repeated SQL execution
select b.brand_name, b.stamp_text from plmbrand_info a, plmdd_brand_info b where (any a.superbrand='plm_file' and not
superbrand='plm_portfolio' and not superbrand = 'plm_rm_schemeal_record' and not superbrand = 'plm_rm_schemeal_rec_structure')
and (a.brand_name = b.brand_name) and (b.nls_key = 'en') and (b.business_rule_id = '1126734901') and not (b.life_state = 3) order
by 1,2
TF:340 ms C:2
Heavy SQL
select b.brand_name, b.stamp_text from plmbrand_info a, plmdd_brand_info b where (any a.superbrand='plm_file' and not
superbrand='plm_portfolio' and not superbrand = 'plm_rm_schemeal_record' and not superbrand = 'plm_rm_schemeal_rec_structure')
and (a.brand_name = b.brand_name) and (b.nls_key = 'en') and (b.business_rule_id = '1126734901') and not (b.life_state = 3) order
by 1,2
F:259 ms
select b.brand_name, b.stamp_text from plmbrand_info a, plmdd_brand_info b where (any a.superbrand='plm_file' and not
superbrand='plm_portfolio' and not superbrand = 'plm_rm_schemeal_record' and not superbrand = 'plm_rm_schemeal_rec_structure')
and (a.brand_name = b.brand_name) and (b.nls_key = 'en') and (b.business_rule_id = '1126734901') and not (b.life_state = 3) order
by 1,2
F:81 ms
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 12
Heavy Methods by Total Net
The section lists the methods with longest total net time, which are directly responsible for the duration of the execution.
Net time is calculated as full duration time minus full duration time of methods that are called directly from the method in question. The list could contain low-level methods, including I/O methods and other
event waits.
Top 20 displayed.
Method Total Duration (ms)
Executed
Number of
Times
com.prefvendor.mat.schemeext.comp.Reserve$ClearReserveMonitor.run 120010 4
com.prefvendor.mat.SessionSync.lock0 53330 97
com.prefvendor.imp.util.io.InfoPipe.readSocket 29403 21088
weblogic.servlet.internal.ChunkOutput.writeStream 23046 58
com.prefvendor.tools.infomodel.imp.DBImpl.loadDocument 7035 6987
com.prefvendor.pls.utils.SysPathUtils.getValue 6603 6438
weblogic.servlet.internal.ChunkOutput.flush 4916 2525
weblogic.servlet.internal.ServletStubImpl.execute 3723 339
Heavy Methods by Total Net Duration
125k
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 13
weblogic.servlet.internal.FilterChainImpl.add 3130 53
weblogic.servlet.jsp.TagFileClassLoader.findClass 2507 91
weblogic.servlet.jsp.JspClassLoader.findClass 1500 135
com.prefvendor.imp.util.io.InfoPipe.writeSocket 1044 1044
com.prefvendor.com.Consumer.getLocalClient 874 1
com.prefvendor.xml.jaxp.PlDocumentBuilderImpl.parse 829 348
com.prefvendor.mat.schemeext.action.ActionService.newInstance 792 41
com.prefvendor.res.RerootBundle.loadBundle 685 56
com.prefvendor.xml.jaxp.PlDocumentBuilderFactoryImpl.newDocumentBuilder 680 678
weblogic.servlet.FileServlet.service 644 95
com.prefvendor.thirdparty.javassist.compiler.MemberResolver.lookupMethod 621 1459
com.prefvendor.xml.jaxp.PlFactoryFinder.find 614 630
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 14
All Queries Totals
The section highlights portion of the overall execution time that was spend on database queries.
The data could be one of the quick indicators on whether the performance issues are database related.
Total Duration (ms) Count
All Queries Total: 17224(ms) 8593
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 15
Heavy Queries
The section lists twenty individual queries with the longest execution time.
In many cases, these queries are the "low hanging fruit" for performance improvement; optimization of the queries could be one of the first steps in enhancing the application performance.
Top 20 displayed.
Statement Duration (ms) Executed Method
select b.brand_name, b.stamp_text from plmbrand_info a, plmdd_brand_info b where (any a.superbrand='plm_file' and not
superbrand='plm_portfolio' and not superbrand = 'plm_rm_schemeal_record' and not superbrand =
'plm_rm_schemeal_rec_structure') and (a.brand_name = b.brand_name) and (b.nls_key = 'en') and (b.business_rule_id =
'1126734901') and not (b.life_state = 3) order by 1,2
259
com.prefvendor.methodmanager.configuratio
n.info.action.service.imp.ParameterValueSql
ListSelectionMethod.execQuery
select b.brand_name, b.stamp_text from plmbrand_info a, plmdd_brand_info b where (any a.superbrand='plm_file' and not
superbrand='plm_portfolio' and not superbrand = 'plm_rm_schemeal_record' and not superbrand =
'plm_rm_schemeal_rec_structure') and (a.brand_name = b.brand_name) and (b.nls_key = 'en') and (b.business_rule_id =
'1126734901') and not (b.life_state = 3) order by 1,2
81
com.prefvendor.methodmanager.configuratio
n.info.action.service.imp.ParameterValueSql
ListSelectionMethod.execQuery
select sum(col7) as new_salary, sum(col4*col7/col3) as new_bonus from plm_acme_complex_hinfo where col0 in (select
employee_id from acme_employee_portfolio
80
dbyte.demo.CalculateSalaryIncreaseEx.calc
ulateDepartmentalAdjustmentsOpt
select sum(col7) as new_salary, sum(col4*col7/col3) as new_bonus from plm_acme_complex_hinfo where col0 in (select
employee_id from acme_employee_portfolio
69
dbyte.demo.CalculateSalaryIncreaseEx.calc
ulateDepartmentalAdjustmentsOpt
select upper(entity_name),link_id,entity_name,entity_brand,link_cnt,link_owner from plm_portfolio where (is_reference is
null or is_reference = 0) order by 1
68
com.prefvendor.mat.schemeext.ctrl.db.DBPo
rtfolioTreeNode.addChildNodes
SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS
sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM
(SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS
q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS
q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id
AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS
q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS
q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand
IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT
65
com.prefvendor.plm.assignmentlist.imp.Assi
gnmentListReservedCollection.runSQLIntern
al
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 16
OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi.
rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC
select link_id, entity_name, portfolio_id, portfolio_path, position from plm_portfolio where link_id in (select ancestoid from
plm_portfolio where link_id in ('1210665227') and is_hidden = false) order by link_id, position
64
com.prefvendor.imp.objectpath.query.BaseQ
uery.getBaseQueryImpl
SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS
sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM
(SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS
q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS
q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id
AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS
q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS
q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand
IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT
OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi.
rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC
63
com.prefvendor.plm.assignmentlist.imp.Assi
gnmentListReservedCollection.runSQLIntern
al
SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS
sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM
(SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS
q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS
q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id
AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS
q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS
q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand
IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT
OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi.
rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC
63
com.prefvendor.plm.assignmentlist.imp.Assi
gnmentListReservedCollection.runSQLIntern
al
select sum(col7) as new_salary, sum(col4*col7/col3) as new_bonus from plm_acme_complex_hinfo where col0 in (select
employee_id from acme_employee_portfolio
62
dbyte.demo.CalculateSalaryIncreaseEx.calc
ulateDepartmentalAdjustmentsOpt
SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS
sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM
(SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS
q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS
q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id
AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS
q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS
q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand
IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT
OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi.
rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC
60
com.prefvendor.plm.assignmentlist.imp.Assi
gnmentListReservedCollection.runSQLIntern
al
59
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 17
SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS
sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM
(SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS
q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS
q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id
AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS
q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS
q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand
IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT
OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi.
rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC
com.prefvendor.plm.assignmentlist.imp.Assi
gnmentListReservedCollection.runSQLIntern
al
SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS
sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM
(SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS
q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS
q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id
AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS
q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS
q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand
IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 101 201 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X
LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON
wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC
58
com.prefvendor.plm.assignmentlist.imp.Assi
gnmentListReservedCollection.runSQLIntern
al
SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS
sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM
(SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS
q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS
q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id
AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS
q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS
q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand
IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT
OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi.
rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC
58
com.prefvendor.plm.assignmentlist.imp.Assi
gnmentListReservedCollection.runSQLIntern
al
SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS
sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM
(SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS
q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS
q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id
AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS
q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS
q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand
IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 101 201 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X
LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON
wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC
57
com.prefvendor.plm.assignmentlist.imp.Assi
gnmentListReservedCollection.runSQLIntern
al
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 18
SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS
sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM
(SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS
q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS
q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id
AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS
q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS
q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand
IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 201 301 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X
LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON
wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC
57
com.prefvendor.plm.assignmentlist.imp.Assi
gnmentListReservedCollection.runSQLIntern
al
SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS
sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM
(SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS
q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS
q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id
AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS
q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS
q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand
IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT
OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi.
rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC
57
com.prefvendor.plm.assignmentlist.imp.Assi
gnmentListReservedCollection.runSQLIntern
al
SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS
sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM
(SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS
q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS
q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id
AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS
q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS
q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand
IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 201 301 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X
LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON
wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC
56
com.prefvendor.plm.assignmentlist.imp.Assi
gnmentListReservedCollection.runSQLIntern
al
select sum(col7) as new_salary, sum(col4*col7/col3) as new_bonus from plm_acme_complex_hinfo where col0 in (select
employee_id from acme_employee_portfolio
53
dbyte.demo.CalculateSalaryIncreaseEx.calc
ulateDepartmentalAdjustmentsOpt
select distinct flow_id from plm_acme_complex_hinfo where col0 in (select employee_id from acme_employee_portfolio) 52
dbyte.demo.CalculateSalaryIncreaseEx.calc
ulateDepartmentalAdjustments
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 19
Heavy Queries by Total Duration
While one execution of the query doesn't take long time to execute, the queries listed in this section were executed enough times to account for the significant total execution time; hence, impacting overall
performance of the application.
If single execution of the query takes long time, and the query is executed multiple times, it might get listed in the 'Heavy Queries' section as well. If the queries could not be executed fewer times, retrieval
and cashing of the data may represent one of the viable solutions improving efficiency.
Top 20 displayed.
1 SQL statement that was executed more that 300 times
Statement
Total
Duration
(ms)
Count Executed Method
select link_id, modify_date from plm_brand_info where complex_name = 'acme_complex_hinfo' 13020 7741
com.prefvendor.pls.utils.DBUtils.executeQue
ry
Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 20

More Related Content

Viewers also liked

Kepler vs Xeon Phi
Kepler vs Xeon Phi Kepler vs Xeon Phi
Kepler vs Xeon Phi Mert Akın
 
No child left behind
No child left behindNo child left behind
No child left behindnclb
 
No child left behind
No child left behindNo child left behind
No child left behindnclb
 
Struktur dan bagian penting dari tumbuhan
Struktur dan bagian penting dari tumbuhanStruktur dan bagian penting dari tumbuhan
Struktur dan bagian penting dari tumbuhankurnia12005193
 
HPC, Big Data & Data Center Explanation by Mert Akın
HPC, Big Data & Data  Center Explanation by Mert AkınHPC, Big Data & Data  Center Explanation by Mert Akın
HPC, Big Data & Data Center Explanation by Mert AkınMert Akın
 
As telcos go digital, cybersecurity risks intensify by pwc
As telcos go digital, cybersecurity risks intensify by pwcAs telcos go digital, cybersecurity risks intensify by pwc
As telcos go digital, cybersecurity risks intensify by pwcMert Akın
 
UW - transcript
UW - transcriptUW - transcript
UW - transcriptJason Hall
 
Media pembelajaran IPA kelas 3 semester 1
Media pembelajaran IPA kelas 3 semester 1Media pembelajaran IPA kelas 3 semester 1
Media pembelajaran IPA kelas 3 semester 1kurnia12005193
 

Viewers also liked (14)

DOKUMENTASI OBSERVASI
DOKUMENTASI OBSERVASIDOKUMENTASI OBSERVASI
DOKUMENTASI OBSERVASI
 
Kepler vs Xeon Phi
Kepler vs Xeon Phi Kepler vs Xeon Phi
Kepler vs Xeon Phi
 
Tics
TicsTics
Tics
 
Present
PresentPresent
Present
 
Infogr.am
Infogr.amInfogr.am
Infogr.am
 
Leg ed.
Leg ed.Leg ed.
Leg ed.
 
Story board
Story boardStory board
Story board
 
No child left behind
No child left behindNo child left behind
No child left behind
 
No child left behind
No child left behindNo child left behind
No child left behind
 
Struktur dan bagian penting dari tumbuhan
Struktur dan bagian penting dari tumbuhanStruktur dan bagian penting dari tumbuhan
Struktur dan bagian penting dari tumbuhan
 
HPC, Big Data & Data Center Explanation by Mert Akın
HPC, Big Data & Data  Center Explanation by Mert AkınHPC, Big Data & Data  Center Explanation by Mert Akın
HPC, Big Data & Data Center Explanation by Mert Akın
 
As telcos go digital, cybersecurity risks intensify by pwc
As telcos go digital, cybersecurity risks intensify by pwcAs telcos go digital, cybersecurity risks intensify by pwc
As telcos go digital, cybersecurity risks intensify by pwc
 
UW - transcript
UW - transcriptUW - transcript
UW - transcript
 
Media pembelajaran IPA kelas 3 semester 1
Media pembelajaran IPA kelas 3 semester 1Media pembelajaran IPA kelas 3 semester 1
Media pembelajaran IPA kelas 3 semester 1
 

Similar to DiscoveredByte - Java Performance Monitoring, Tuning and Optimization - Key Performance Findings report - Demo

How to reduce expenses on monitoring
How to reduce expenses on monitoringHow to reduce expenses on monitoring
How to reduce expenses on monitoringRomanKhavronenko
 
stackconf 2023 | How to reduce expenses on monitoring with VictoriaMetrics by...
stackconf 2023 | How to reduce expenses on monitoring with VictoriaMetrics by...stackconf 2023 | How to reduce expenses on monitoring with VictoriaMetrics by...
stackconf 2023 | How to reduce expenses on monitoring with VictoriaMetrics by...NETWAYS
 
weblogic perfomence tuning
weblogic perfomence tuningweblogic perfomence tuning
weblogic perfomence tuningprathap kumar
 
Performance eng prakash.sahu
Performance eng prakash.sahuPerformance eng prakash.sahu
Performance eng prakash.sahuDr. Prakash Sahu
 
EAI Performance Analysis Web-Methods | Torry Harris Whitepaper
EAI Performance Analysis Web-Methods | Torry Harris WhitepaperEAI Performance Analysis Web-Methods | Torry Harris Whitepaper
EAI Performance Analysis Web-Methods | Torry Harris WhitepaperTorry Harris Business Solutions
 
Presentation major
Presentation majorPresentation major
Presentation majormallika26
 
Kafka monitoring and metrics
Kafka monitoring and metricsKafka monitoring and metrics
Kafka monitoring and metricsTouraj Ebrahimi
 
Jmeter interviewquestions
Jmeter interviewquestionsJmeter interviewquestions
Jmeter interviewquestionsgirichinna27
 
Data power Performance Tuning
Data power Performance TuningData power Performance Tuning
Data power Performance TuningKINGSHUK MAJUMDER
 
Joget Workflow Clustering and Performance Testing on Amazon Web Services (AWS)
Joget Workflow Clustering and Performance Testing on Amazon Web Services (AWS)Joget Workflow Clustering and Performance Testing on Amazon Web Services (AWS)
Joget Workflow Clustering and Performance Testing on Amazon Web Services (AWS)Joget Workflow
 
Dmv's & Performance Monitor in SQL Server
Dmv's & Performance Monitor in SQL ServerDmv's & Performance Monitor in SQL Server
Dmv's & Performance Monitor in SQL ServerZeba Ansari
 
Prometheus Everything, Observing Kubernetes in the Cloud
Prometheus Everything, Observing Kubernetes in the CloudPrometheus Everything, Observing Kubernetes in the Cloud
Prometheus Everything, Observing Kubernetes in the CloudSneha Inguva
 
Guide to alfresco monitoring
Guide to alfresco monitoringGuide to alfresco monitoring
Guide to alfresco monitoringMiguel Rodriguez
 
Performance Test Plan - Sample 1
Performance Test Plan - Sample 1Performance Test Plan - Sample 1
Performance Test Plan - Sample 1Atul Pant
 
Cloud Performance Benchmarking
Cloud Performance BenchmarkingCloud Performance Benchmarking
Cloud Performance BenchmarkingSantanu Dey
 
"Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada Fwdays
 

Similar to DiscoveredByte - Java Performance Monitoring, Tuning and Optimization - Key Performance Findings report - Demo (20)

How to reduce expenses on monitoring
How to reduce expenses on monitoringHow to reduce expenses on monitoring
How to reduce expenses on monitoring
 
stackconf 2023 | How to reduce expenses on monitoring with VictoriaMetrics by...
stackconf 2023 | How to reduce expenses on monitoring with VictoriaMetrics by...stackconf 2023 | How to reduce expenses on monitoring with VictoriaMetrics by...
stackconf 2023 | How to reduce expenses on monitoring with VictoriaMetrics by...
 
weblogic perfomence tuning
weblogic perfomence tuningweblogic perfomence tuning
weblogic perfomence tuning
 
Performance eng prakash.sahu
Performance eng prakash.sahuPerformance eng prakash.sahu
Performance eng prakash.sahu
 
EAI Performance Analysis Web-Methods | Torry Harris Whitepaper
EAI Performance Analysis Web-Methods | Torry Harris WhitepaperEAI Performance Analysis Web-Methods | Torry Harris Whitepaper
EAI Performance Analysis Web-Methods | Torry Harris Whitepaper
 
Presentation major
Presentation majorPresentation major
Presentation major
 
kogatam_swetha
kogatam_swethakogatam_swetha
kogatam_swetha
 
Kafka monitoring and metrics
Kafka monitoring and metricsKafka monitoring and metrics
Kafka monitoring and metrics
 
Jmeter interviewquestions
Jmeter interviewquestionsJmeter interviewquestions
Jmeter interviewquestions
 
Data power Performance Tuning
Data power Performance TuningData power Performance Tuning
Data power Performance Tuning
 
Joget Workflow Clustering and Performance Testing on Amazon Web Services (AWS)
Joget Workflow Clustering and Performance Testing on Amazon Web Services (AWS)Joget Workflow Clustering and Performance Testing on Amazon Web Services (AWS)
Joget Workflow Clustering and Performance Testing on Amazon Web Services (AWS)
 
Diesel load testing tool
Diesel load testing toolDiesel load testing tool
Diesel load testing tool
 
Dmv's & Performance Monitor in SQL Server
Dmv's & Performance Monitor in SQL ServerDmv's & Performance Monitor in SQL Server
Dmv's & Performance Monitor in SQL Server
 
Prometheus Everything, Observing Kubernetes in the Cloud
Prometheus Everything, Observing Kubernetes in the CloudPrometheus Everything, Observing Kubernetes in the Cloud
Prometheus Everything, Observing Kubernetes in the Cloud
 
Banv
BanvBanv
Banv
 
Guide to alfresco monitoring
Guide to alfresco monitoringGuide to alfresco monitoring
Guide to alfresco monitoring
 
SAP Gateway scalability testing
SAP Gateway scalability testingSAP Gateway scalability testing
SAP Gateway scalability testing
 
Performance Test Plan - Sample 1
Performance Test Plan - Sample 1Performance Test Plan - Sample 1
Performance Test Plan - Sample 1
 
Cloud Performance Benchmarking
Cloud Performance BenchmarkingCloud Performance Benchmarking
Cloud Performance Benchmarking
 
"Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
 

Recently uploaded

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 

Recently uploaded (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 

DiscoveredByte - Java Performance Monitoring, Tuning and Optimization - Key Performance Findings report - Demo

  • 1. Consolidated Report of the Key Findings "Demo - Premium resolution(89)" The report focuses on the key indicators of the monitored case and significantly reduces the time required to analyze collected information and identify bottlenecks. It features the areas that influence performance of the application the most, whether it is individual execution or cumulative impact on the system due to high frequency of use, and/or areas that create abnormally high load on the system as a whole. Thresholds Name Red Alert Yellow Alert Heavy methods: 10000 (ms) 5000 (ms) Heavy pages: 10000 (ms) 5000 (ms) Heavy SQLs: 3000 (ms) 1000 (ms) Too Many SQLs: 300 (count) 100 (count) Heavy Threads: 25 (cpu %) 3 (cpu %) System Alerts Alerts section lists events with execution time or resource utilization exceeding predefined thresholds. To avoid excessive alerts while monitoring the cases impacted by significant performance degradation, the default threshold settings reflect behavior of an application performing worse than average. If the default thresholds values render too much information or too few results, they could be manually adjusted in 'Manage Case and Thresholds Settings' section of the analyzed case. If required, modified thresholds could be reset back to their default values. 6 methods with max execution time longer than 10 sec 3 methods with max execution time longer than 5 sec and less than 10 sec 2 pages with max execution time longer than 10 sec 3 pages with max execution time longer than 5 sec and less than 10 sec 1 SQL statement that was executed more that 300 times Threads 13 consuming on average more than 25% cpu each Threads 34, 70 consuming on average more than 3% cpu and less han 25% cpu each Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 1
  • 2. Resources Utilization - CPU The graph below shows total general CPU utilization by Java Virtual Machine (JVM), as well as consumption by the most demanding individual threads within JVM, as the percentage of the total server's CPU. In HTML format, dragging mouse along the thread's graph will provide additional details at every point with significant JVM consumption. If utilization of the CPU exceeds 70% for the substantial amount of monitored time, application's performance could be constrained by the availability of the systems resources; hence, appropriate server scaling considerations might be required. JVM CPU Usage Peak - 31% Avg - 8% Threads 13 consuming on average more than 25% cpu each Threads 34, 70 consuming on average more than 3% cpu and less han 25% cpu each JVM CPU by Thread Utilization Individual Threads CPU against JVM CPU 20:20:15 20:21:30 20:21:45 20:22:00 20:22:15 20:22:30 20:22:45 20:23:00 20:23:15 20:23:30 20:23:45 20:24:00 20:24:30 Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 2
  • 3. Resources Utilization - Memory The graph below shows memory utilization by the Java Virtual Machine. Memory consumption is expected to grow until it is released by the garbage collector (GC). Up and down fluctuations are normal and indicate that the system is healthy. However, behavior when memory drops to increasingly higher level and oscillations grow shorter, while top line lingers around maximal available memory, may indicate memory leak in the system, or simply higher demand that JVM can provide. In such case, the execution of the application is constrained by total available memory and JVM might eventually crash. JVM Memory Usage Peak - 396MB Avg - 247MB JVM Memory Utilization Max Available Memory 1029 MB 20:21:30 20:22:00 20:22:30 20:23:00 20:23:30 20:24:00 20:24:30 20:25:00 20:25:30 Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 3
  • 4. User Experience The graph below shows the top-level server-side execution that comes in response to the user actions or client-side scripts, which contributed to user wait time. Additional factors that may impact user experience are network latency and browser-side processing time. The execution time shown on the graph represents minimum user wait time which could be achieved when user has adequately equipped workstation and negligible network delays. 2 pages with max execution time longer than 10 sec 3 pages with max execution time longer than 5 sec and less than 10 sec Top 20 displayed. Page/Method User's IP Full Duration (ms) jsp_servlet._demo._lib._xschemes._flow.__assignmentmanagerscheme._jspService 192.168.10.124 50817 jsp_servlet._demo._lib._uicomposition.__navigationbar._jspService 192.168.10.124 50813 jsp_servlet._acme._jsp._pcomp.__tray_container._jspService 192.168.10.124 9284 jsp_servlet._demo._lib._xschemes._tray.__tray._jspService 192.168.10.124 8351 jsp_servlet._acme._jsp._demo.__login._jspService 192.168.10.124 5006 User Experience Server Side Execution 20:21:30 20:21:45 20:22:00 20:22:15 20:22:30 20:22:45 20:23:00 20:23:15 20:23:30 20:23:45 20:24:00 20:24:15 20:24:30 Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 4
  • 5. Heavy Methods The section lists twenty methods with the longest execution time, along with the details pinpointing the reasons. For each of the listed in the table methods, report offers additional supporting information about repeatedly executed sub-methods, methods with highest net execution time, methods causing the highest CPU utilization, total time spent on database queries and the Heaviest SQL queries. 6 methods with max execution time longer than 10 sec 3 methods with max execution time longer than 5 sec and less than 10 sec Top 20 displayed. Method Full Duration (ms) weblogic.servlet.internal.ServletRequestImpl.run 50821 weblogic.servlet.internal.ServletRequestImpl.run 50817 com.prefvendor.mat.schemeext.comp.Reserve$ClearReserveMonitor.run 30007 com.prefvendor.mat.schemeext.comp.Reserve$ClearReserveMonitor.run 30001 weblogic.servlet.internal.ServletRequestImpl.run 9406 weblogic.servlet.internal.WebAppModule.start 7238 weblogic.servlet.internal.ServletRequestImpl.run 6672 HEAVY METHODS F: Full Duration TF: Total Full Duration N: Net Duration TN: Total Net Duration C: Count weblogic.servlet.internal.ServletRequestImpl.run F:50821 ms N:0 ms Execution highlights Repeated Sub Method Execution com.prefvendor.plm.PlProcEx.getVarMetaInfo TF:29466 ms C:7738 com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.getComplex TF:16446 ms C:7737 com.prefvendor.pls.utils.DBUtils.executeQuery TF:13026 ms C:7737 com.prefvendor.plm.PlProcEx.getComplexInfoBrand TF:16578 ms C:7736 com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.lookupComplexInfoBrand TF:16549 ms C:7736 com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.lookupComplexInfoBrand TF:16535 ms C:7736 com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.getComplexFromComplexName TF:16522 ms C:7736 com.prefvendor.plm.PlFlowEx.getComplexInfoBrand TF:34648 ms C:7735 com.prefvendor.plm.db.db.XMLStorageMappingUtils.getDefaultXMLInstance TF:8368 ms C:7600 com.prefvendor.schemestorage.SysSchemesStorageService.getXMLDocument TF:8342 ms C:7595 Heavy Method by Total Full com.prefvendor.mat.scheme.ControlStub.doStartStub TF:50688 ms TN:0 ms C:2 dbyte.demo.CalculateSalaryIncreaseEx.execute TF:50479 ms TN:3 ms C:4 com.prefvendor.schemeengine.connector.inforoot.InfoConnectorExecutor.execute TF:50479 ms TN:0 ms C:4 dbyte.demo.CalculateSalaryIncreaseEx.method TF:50476 ms TN:9 ms C:4 dbyte.demo.CalculateSalaryIncreaseEx.calculateDepartmentalAdjustments TF:50442 ms TN:80 ms C:4 com.prefvendor.plm.PlFlowEx.getComplexInfoValue TF:46270 ms TN:34 ms C:7140 Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 5
  • 6. com.prefvendor.plm.PlFlowEx.getComplexInfoBrand TF:31811 ms TN:36 ms C:7140 com.prefvendor.plm.PlProcEx.getVarMetaInfo TF:26998 ms TN:71 ms C:7140 com.prefvendor.plm.PlProcEx.getComplexInfoBrand TF:15238 ms TN:15 ms C:7140 com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.lookupComplexInfoBrand TF:15211 ms TN:8 ms C:7140 Heavy Method by Total Net com.prefvendor.imp.util.io.InfoPipe.readSocket TF:10389 ms TN:10389 ms C:7146 com.prefvendor.pls.utils.SysPathUtils.getValue TF:6610 ms TN:6603 ms C:6438 com.prefvendor.tools.infomodel.imp.DBImpl.loadDocument TF:6058 ms TN:6058 ms C:6017 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:5930 ms TN:5930 ms C:5926 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:3320 ms TN:3320 ms C:3192 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:1102 ms TN:1102 ms C:607 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:887 ms TN:887 ms C:598 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:829 ms TN:829 ms C:829 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:594 ms TN:594 ms C:584 com.prefvendor.tools.infomodel.imp.DBImpl.loadDocument TF:592 ms TN:592 ms C:586 Heavy by CPU usage Total CPU time: 23.85 sec. Total Average CPU Server Utilization: 8.98% CPU Time 1.61 sec CPU Server Utilization 15.36% java.net.SocketInputStream.socketRead0(Native Method) java.net.SocketInputStream.read(SocketInputStream.java:129) com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root) com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root) com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root) CPU Time 1.73 sec CPU Server Utilization 14.25% java.io.WinNTFileSystem.getBooleanAttributes(Native Method) java.io.File.exists(File.java:733) sun.misc.URLClassPath$FileLoader.getResource(URLClassPath.java:999) sun.misc.URLClassPath$FileLoader.findResource(URLClassPath.java:966) sun.misc.URLClassPath.findResource(URLClassPath.java:146) CPU Time 1.65 sec CPU Server Utilization 8.28% java.net.SocketInputStream.socketRead0(Native Method) java.net.SocketInputStream.read(SocketInputStream.java:129) com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root) com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root) com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root) CPU Time 1.58 sec CPU Server Utilization 10.00% com.prefvendor.imp.session.SessionHandle.getDBName(Unknown Root) com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.getComplexReserveComptroller(Unknown Root) com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.getComplex(Unknown Root) com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.getComplexFromComplexName(Unknown Root) com.prefvendor.plm.db.db.PlComplexInfoBrandDAOImplEx.lookupComplexInfoBrand(Unknown Root) CPU Time 1.83 sec CPU Server Utilization 9.40% java.net.SocketInputStream.socketRead0(Native Method) java.net.SocketInputStream.read(SocketInputStream.java:129) com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root) com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root) com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root) Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 6
  • 7. CPU Time 1.64 sec CPU Server Utilization 10.00% java.net.SocketInputStream.socketRead0(Native Method) java.net.SocketInputStream.read(SocketInputStream.java:129) com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root) com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root) com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root) CPU Time 1.67 sec CPU Server Utilization 10.23% java.net.SocketInputStream.socketRead0(Native Method) java.net.SocketInputStream.read(SocketInputStream.java:129) com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root) com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root) com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root) CPU Time 1.58 sec CPU Server Utilization 7.00% java.net.SocketInputStream.socketRead0(Native Method) java.net.SocketInputStream.read(SocketInputStream.java:129) com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root) com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root) com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root) CPU Time 1.64 sec CPU Server Utilization 10.12% java.net.SocketInputStream.socketRead0(Native Method) java.net.SocketInputStream.read(SocketInputStream.java:129) com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root) com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root) com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root) CPU Time 1.48 sec CPU Server Utilization 7.00% java.net.SocketOutputStream.socketWrite0(Native Method) java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92) java.net.SocketOutputStream.write(SocketOutputStream.java:1311) com.prefvendor.imp.util.io.DataPipe.writeSocket(Unknown Root) com.prefvendor.imp.util.io.DataPipe.write(Unknown Root) Total SQL execution F:14480 ms C:8342 28.49% of the method execution Repeated SQL execution select link_id, modify_date from plm_brand_info where complex_name = 'acme_complex_hinfo' TF:13007 ms C:7736 weblogic.servlet.internal.ServletRequestImpl.run F:50817 ms N:0 ms Execution highlights Repeated Sub Method Execution com.prefvendor.mat.SessionSync.lock0 TF:50803 ms C:3 com.prefvendor.mat.SessionSync.lock TF:50803 ms C:3 com.prefvendor.mat.scheme.SchemeProcor.invokeMethod TF:50800 ms C:2 com.prefvendor.mat.scheme.SchemeProcor.invokeMethod TF:50800 ms C:2 Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 7
  • 8. com.prefvendor.mat.scheme.SchemeProcor.lockSession TF:50799 ms C:2 com.prefvendor.mat.schemeext.comp.Reserve$ClearReserveMonitor.run F:30007 ms N:30007 ms Execution highlights Method has no highlights com.prefvendor.mat.schemeext.comp.Reserve$ClearReserveMonitor.run F:30001 ms N:30001 ms Execution highlights Method has no highlights weblogic.servlet.internal.ServletRequestImpl.run F:9406 ms N:0 ms Execution highlights Repeated Sub Method Execution com.prefvendor.plm.infolist.ComplexUtil.isComplexProcVarVisible TF:267 ms C:241 com.prefvendor.plm.assignmentlist.imp.AssignmentListReservedCollection.prepareOneRow TF:379 ms C:100 com.prefvendor.mat.scheme.ControlStub.schemeatText TF:289 ms C:62 com.prefvendor.mat.scheme.ControlStub.schemeatValue TF:288 ms C:61 com.prefvendor.mat.scheme.ctrl.schemeat.ValueSchemeatterStub.schemeat TF:287 ms C:60 com.prefvendor.mat.schemeext.ctrl.schemexschemesctrl.SysSchemesListValueSchemeatter.schemeat TF:283 ms C:58 com.prefvendor.mat.scheme.ctrl.LinkStub.renderStart TF:287 ms C:57 com.prefvendor.mat.schemeext.ctrl.schemeext.SysSchemesLinkStub.renderLinkStart TF:287 ms C:57 com.prefvendor.mat.schemeext.ctrl.schemexschemesctrl.SysSchemesListValueSchemeatter.schemeatSingleValue TF:278 ms C:53 com.prefvendor.mat.schemeext.ctrl.action.ActionMultiselectCheckboxStub.renderEnd TF:344 ms C:44 Heavy Method by Net weblogic.servlet.jsp.TagFileClassLoader.findClass F:514 ms N:514 ms com.prefvendor.tools.infomodel.util.SchemaUtility.getSchema F:273 ms N:273 ms com.prefvendor.mat.schemeext.ctrl.schemePLMSysSchemesProcorFactory.newInstance F:1745 ms N:245 ms com.prefvendor.mat.schemeext.ctrl.schemexschemesctrl.SysSchemesAssignmentList.updateControl F:244 ms N:238 ms weblogic.servlet.jsp.TagFileClassLoader.findClass F:198 ms N:198 ms com.prefvendor.mat.scheme.ctrl.infobound.DbgridStub.findColumnName F:190 ms N:190 ms weblogic.servlet.jsp.TagFileClassLoader.findClass F:183 ms N:183 ms com.prefvendor.plm.db.db.DAOHelper.getStorageMapping F:628 ms N:182 ms com.prefvendor.mat.schemeext.ctrl.schemexschemesctrl.SysSchemesListValueSchemeatter.schemeat F:178 ms N:175 ms weblogic.servlet.jsp.TagFileClassLoader.findClass F:150 ms N:150 ms Heavy Method by Total Full com.prefvendor.mat.scheme.ControlStub.doEndStub TF:9020 ms TN:8 ms C:3 Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 8
  • 9. com.prefvendor.mat.scheme.ControlStub.doEndStub TF:1533 ms TN:8 ms C:207 weblogic.servlet.jsp.JspClassLoader.loadClass TF:1522 ms TN:0 ms C:19 weblogic.servlet.jsp.JspClassLoader.findClass TF:1522 ms TN:1 ms C:19 weblogic.servlet.jsp.TagFileClassLoader.findClass TF:1521 ms TN:1521 ms C:19 weblogic.servlet.jsp.TagFileClassLoader.loadClass TF:1521 ms TN:0 ms C:19 com.prefvendor.mat.scheme.ControlStub.doStartStub TF:1120 ms TN:1 ms C:98 com.prefvendor.pcomp.schemetray.SysSchemesAssignmentListModule.getAttrDescriptor TF:741 ms TN:0 ms C:2 com.prefvendor.mat.schemeext.action.ActionService.getActionDef TF:579 ms TN:4 ms C:40 com.prefvendor.mat.scheme.ControlStub.getControl TF:519 ms TN:1 ms C:109 Heavy Method by Total Net weblogic.servlet.jsp.TagFileClassLoader.findClass TF:1521 ms TN:1521 ms C:19 com.prefvendor.mat.schemeext.action.ActionService.newInstance TF:463 ms TN:463 ms C:18 com.prefvendor.mat.scheme.ctrl.infobound.DbgridStub.findColumnName TF:191 ms TN:191 ms C:2 com.prefvendor.mat.schemeext.ctrl.schemexschemesctrl.SysSchemesListValueSchemeatter.schemeat TF:221 ms TN:177 ms C:43 Heavy by CPU usage Total CPU time: 3.48 sec. Total Average CPU Server Utilization: 12.59% CPU Time 2.04 sec CPU Server Utilization 24.49% java.io.FileInputStream.readBytes(Native Method) java.io.FileInputStream.read(FileInputStream.java:220) weblogic.utils.io.DataIO.readFully(DataIO.java:351) weblogic.utils.io.DataIO.readFully(DataIO.java:328) weblogic.utils.classloaders.FileSource.getBytesInternal(FileSource.java:80) CPU Time 0.67 sec CPU Server Utilization 6.90% java.io.FileInputStream.readBytes(Native Method) java.io.FileInputStream.read(FileInputStream.java:220) weblogic.utils.io.DataIO.readFully(DataIO.java:351) weblogic.utils.io.DataIO.readFully(DataIO.java:328) weblogic.utils.classloaders.FileSource.getBytesInternal(FileSource.java:80) Total SQL execution F:150 ms C:23 1.59% of the method execution weblogic.servlet.internal.WebAppModule.start F:7238 ms N:1 ms Execution highlights Repeated Sub Method Execution com.prefvendor.imp.util.reflection.proxy.ProxyClassGenerator.methodMethod TF:1750 ms C:1468 com.prefvendor.thirdparty.javassist.CtNewMethod.make TF:1458 ms C:1300 com.prefvendor.thirdparty.javassist.CtNewMethod.make TF:1457 ms C:1300 com.prefvendor.thirdparty.javassist.compiler.Javac.compile TF:1395 ms C:1289 com.prefvendor.thirdparty.javassist.compiler.Javac.compileMethod TF:1201 ms C:1142 com.prefvendor.thirdparty.javassist.compiler.ast.MethodDecl.accept TF:763 ms C:728 com.prefvendor.thirdparty.javassist.compiler.CodeGen.atMethodDecl TF:763 ms C:728 com.prefvendor.thirdparty.javassist.compiler.CodeGen.atMethodBody TF:722 ms C:689 com.prefvendor.thirdparty.javassist.compiler.MemberCodeGen.atTryStmnt TF:714 ms C:681 Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 9
  • 10. com.prefvendor.thirdparty.javassist.compiler.Parser.parseMethod2 TF:274 ms C:264 Heavy Method by Net com.prefvendor.com.Consumer.getLocalClient F:4122 ms N:874 ms com.prefvendor.xml.jaxp.PlDocumentBuilderImpl.parse F:221 ms N:219 ms com.prefvendor.imp.objectprotocol.AbstractObjectProtocol.deserializePersistentBrands F:164 ms N:162 ms com.prefvendor.xml.jaxp.PlDocumentBuilderFactoryImpl.setAttribute F:88 ms N:88 ms com.prefvendor.PlNewIntermethodLockImpl.acquire F:98 ms N:86 ms com.prefvendor.imp.session.SessionFactory.newSession F:424 ms N:82 ms Heavy Method by Total Full com.prefvendor.mat.element.AdviceComptroller.getListerners TF:2351 ms TN:0 ms C:3 com.prefvendor.mat.element.AdviceComptroller.getListenersFromConfigFile TF:2351 ms TN:45 ms C:3 com.prefvendor.mat.schemeext.config.HttpConfigReader.loadConfigFiles TF:2002 ms TN:96 ms C:48 com.prefvendor.mat.schemeext.config.HttpConfigReader.loadConfigFiles TF:1885 ms TN:5 ms C:10 com.prefvendor.mat.schemeext.config.HttpConfigReader.loadConfigFiles TF:1222 ms TN:50 ms C:120 com.prefvendor.mat.schemeext.config.ConfigFile.loadXML TF:724 ms TN:6 ms C:459 com.prefvendor.imp.util.reflection.proxy.ProxyClassGenerator.methodInterface TF:713 ms TN:2 ms C:18 com.prefvendor.imp.util.reflection.proxy.ProxyClassGenerator.methodMethod TF:665 ms TN:8 ms C:440 com.prefvendor.mat.schemeext.config.ConfigFile.loadXML TF:664 ms TN:2 ms C:351 com.prefvendor.mat.element.AdviceComptroller$ApplicationEventAdviceSender.notifyStartEventForListener TF:567 ms TN:0 ms C:2 Heavy Method by Total Net com.prefvendor.xml.jaxp.PlDocumentBuilderImpl.parse TF:427 ms TN:425 ms C:122 com.prefvendor.xml.jaxp.PlDocumentBuilderFactoryImpl.newDocumentBuilder TF:256 ms TN:255 ms C:256 com.prefvendor.xml.jaxp.PlFactoryFinder.find TF:240 ms TN:233 ms C:240 com.prefvendor.xml.jaxp.PlDocumentBuilderFactoryImpl.newDocumentBuilder TF:208 ms TN:208 ms C:206 com.prefvendor.xml.jaxp.PlFactoryFinder.find TF:193 ms TN:188 ms C:193 com.prefvendor.imp.objectprotocol.AbstractObjectProtocol.deserializePersistentBrands TF:167 ms TN:163 ms C:3 com.prefvendor.xml.jaxp.PlDocumentBuilderFactoryImpl.newDocumentBuilder TF:149 ms TN:149 ms C:148 com.prefvendor.xml.jaxp.PlDocumentBuilderImpl.parse TF:139 ms TN:139 ms C:126 com.prefvendor.xml.jaxp.PlFactoryFinder.find TF:134 ms TN:130 ms C:134 com.prefvendor.mat.schemeext.config.HttpConfigReader.loadConfigFiles TF:2002 ms TN:96 ms C:48 Heavy by CPU usage Total CPU time: 5.05 sec. Total Average CPU Server Utilization: 28.71% CPU Time 2.12 sec CPU Server Utilization 28.71% java.net.SocketInputStream.socketRead0(Native Method) java.net.SocketInputStream.read(SocketInputStream.java:129) com.prefvendor.imp.util.io.DataPipe.readSocket(Unknown Root) com.prefvendor.imp.util.io.DataPipe.readLength(Unknown Root) com.prefvendor.imp.util.io.DataPipe.getIncomingMessageLength(Unknown Root) CPU Time 2.93 sec CPU Server Utilization 28.71% java.util.zip.ZipFile.getEntry(Native Method) java.util.zip.ZipFile.getEntry(ZipFile.java:161) java.util.jar.JarFile.getEntry(JarFile.java:208) java.util.jar.JarFile.getJarEntry(JarFile.java:191) sun.misc.URLClassPath$JarLoader.getResource(URLClassPath.java:757) Total SQL execution F:45 ms C:7 0.62% of the method execution Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 10
  • 11. weblogic.servlet.internal.ServletRequestImpl.run F:6672 ms N:1 ms Execution highlights Repeated Sub Method Execution com.prefvendor.PlObject.getFileEx2 TF:780 ms C:40 com.prefvendor.filling.imp.FillingComptroller.getFile TF:763 ms C:40 com.prefvendor.filling.imp.FillingComptroller.namedGetFile TF:345 ms C:40 com.prefvendor.filling.imp.FillingComptroller.getFile TF:345 ms C:40 com.prefvendor.methodmanager.configuration.info.action.service.imp.AssignmentSpaceSelectionMethodDefinitionFactory.getSelectionMethodDefinition TF:1185 ms C:30 com.prefvendor.methodmanager.configuration.info.action.service.imp.AssignmentSpaceSelectionMethodDefinitionFactory.getListSelectionMethod TF:521 ms C:21 com.prefvendor.methodmanager.configuration.info.action.service.imp.ParameterValueSqlListSelectionMethod.execQuery TF:449 ms C:18 com.prefvendor.methodmanager.configuration.info.action.service.imp.ParameterValueSqlListSelectionMethod.setSelectItem TF:447 ms C:16 com.prefvendor.services.set.imp.SetSyncServiceImpl.load TF:158 ms C:12 com.prefvendor.util.synchronization.imp.DestinationPortfolio.getFilling TF:97 ms C:10 Heavy Method by Net com.prefvendor.plm.app.ReserveComptrollerBuilder.init F:571 ms N:495 ms com.prefvendor.imp.util.io.InfoPipe.readSocket F:258 ms N:258 ms com.prefvendor.imp.util.io.InfoPipe.readSocket F:81 ms N:81 ms com.prefvendor.imp.util.io.InfoPipe.readSocket F:73 ms N:73 ms Heavy Method by Total Full com.prefvendor.methodmanager.configuration.set.AssignmentSpaceSetListener.loadConfigurableActions TF:1576 ms TN:33 ms C:2 com.prefvendor.methodmanager.configuration.configmanager.converter.SetConverterFactory.createSetConverter TF:1539 ms TN:15 ms C:2 com.prefvendor.methodmanager.configuration.configmanager.converter.ActionSetItemConverter.loadSetItems TF:1524 ms TN:2 ms C:2 com.prefvendor.methodmanager.configuration.utils.ConfigServiceUtil.getActionFromElement TF:1021 ms TN:29 ms C:7 com.prefvendor.methodmanager.configuration.utils.ConfigServiceUtil.getActionParameter TF:990 ms TN:2 ms C:3 com.prefvendor.methodmanager.configuration.utils.ConfigServiceUtil.getActionParamValue TF:988 ms TN:1 ms C:3 com.prefvendor.methodmanager.configuration.set.AssignmentSpaceSetListener.cacheReroots TF:968 ms TN:0 ms C:2 com.prefvendor.methodmanager.res.AssignmentSpaceConfigureableReroots.cacheReroots TF:968 ms TN:1 ms C:2 com.prefvendor.methodmanager.configuration.info.action.service.imp.AssignmentSpaceSelectionMethodDefinitionFactory.getSelectionMethodDefinition TF:845 ms TN:2 ms C:16 com.prefvendor.PlObject.getFileEx2 TF:780 ms TN:0 ms C:40 Heavy Method by Total Net com.prefvendor.imp.util.io.InfoPipe.readSocket TF:316 ms TN:316 ms C:17 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:169 ms TN:169 ms C:118 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:122 ms TN:122 ms C:14 com.prefvendor.services.set.imp.RerootWrapper.loadBundleDefinition TF:169 ms TN:105 ms C:4 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:98 ms TN:98 ms C:12 com.prefvendor.util.synchronization.imp.DestinationPortfolio.getFilling TF:97 ms TN:97 ms C:10 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:96 ms TN:96 ms C:12 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:83 ms TN:83 ms C:56 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:81 ms TN:81 ms C:18 com.prefvendor.imp.util.io.InfoPipe.readSocket TF:67 ms TN:67 ms C:47 Total SQL execution F:611 ms C:59 9.16% of the method execution Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 11
  • 12. Repeated SQL execution select b.brand_name, b.stamp_text from plmbrand_info a, plmdd_brand_info b where (any a.superbrand='plm_file' and not superbrand='plm_portfolio' and not superbrand = 'plm_rm_schemeal_record' and not superbrand = 'plm_rm_schemeal_rec_structure') and (a.brand_name = b.brand_name) and (b.nls_key = 'en') and (b.business_rule_id = '1126734901') and not (b.life_state = 3) order by 1,2 TF:340 ms C:2 Heavy SQL select b.brand_name, b.stamp_text from plmbrand_info a, plmdd_brand_info b where (any a.superbrand='plm_file' and not superbrand='plm_portfolio' and not superbrand = 'plm_rm_schemeal_record' and not superbrand = 'plm_rm_schemeal_rec_structure') and (a.brand_name = b.brand_name) and (b.nls_key = 'en') and (b.business_rule_id = '1126734901') and not (b.life_state = 3) order by 1,2 F:259 ms select b.brand_name, b.stamp_text from plmbrand_info a, plmdd_brand_info b where (any a.superbrand='plm_file' and not superbrand='plm_portfolio' and not superbrand = 'plm_rm_schemeal_record' and not superbrand = 'plm_rm_schemeal_rec_structure') and (a.brand_name = b.brand_name) and (b.nls_key = 'en') and (b.business_rule_id = '1126734901') and not (b.life_state = 3) order by 1,2 F:81 ms Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 12
  • 13. Heavy Methods by Total Net The section lists the methods with longest total net time, which are directly responsible for the duration of the execution. Net time is calculated as full duration time minus full duration time of methods that are called directly from the method in question. The list could contain low-level methods, including I/O methods and other event waits. Top 20 displayed. Method Total Duration (ms) Executed Number of Times com.prefvendor.mat.schemeext.comp.Reserve$ClearReserveMonitor.run 120010 4 com.prefvendor.mat.SessionSync.lock0 53330 97 com.prefvendor.imp.util.io.InfoPipe.readSocket 29403 21088 weblogic.servlet.internal.ChunkOutput.writeStream 23046 58 com.prefvendor.tools.infomodel.imp.DBImpl.loadDocument 7035 6987 com.prefvendor.pls.utils.SysPathUtils.getValue 6603 6438 weblogic.servlet.internal.ChunkOutput.flush 4916 2525 weblogic.servlet.internal.ServletStubImpl.execute 3723 339 Heavy Methods by Total Net Duration 125k Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 13
  • 14. weblogic.servlet.internal.FilterChainImpl.add 3130 53 weblogic.servlet.jsp.TagFileClassLoader.findClass 2507 91 weblogic.servlet.jsp.JspClassLoader.findClass 1500 135 com.prefvendor.imp.util.io.InfoPipe.writeSocket 1044 1044 com.prefvendor.com.Consumer.getLocalClient 874 1 com.prefvendor.xml.jaxp.PlDocumentBuilderImpl.parse 829 348 com.prefvendor.mat.schemeext.action.ActionService.newInstance 792 41 com.prefvendor.res.RerootBundle.loadBundle 685 56 com.prefvendor.xml.jaxp.PlDocumentBuilderFactoryImpl.newDocumentBuilder 680 678 weblogic.servlet.FileServlet.service 644 95 com.prefvendor.thirdparty.javassist.compiler.MemberResolver.lookupMethod 621 1459 com.prefvendor.xml.jaxp.PlFactoryFinder.find 614 630 Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 14
  • 15. All Queries Totals The section highlights portion of the overall execution time that was spend on database queries. The data could be one of the quick indicators on whether the performance issues are database related. Total Duration (ms) Count All Queries Total: 17224(ms) 8593 Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 15
  • 16. Heavy Queries The section lists twenty individual queries with the longest execution time. In many cases, these queries are the "low hanging fruit" for performance improvement; optimization of the queries could be one of the first steps in enhancing the application performance. Top 20 displayed. Statement Duration (ms) Executed Method select b.brand_name, b.stamp_text from plmbrand_info a, plmdd_brand_info b where (any a.superbrand='plm_file' and not superbrand='plm_portfolio' and not superbrand = 'plm_rm_schemeal_record' and not superbrand = 'plm_rm_schemeal_rec_structure') and (a.brand_name = b.brand_name) and (b.nls_key = 'en') and (b.business_rule_id = '1126734901') and not (b.life_state = 3) order by 1,2 259 com.prefvendor.methodmanager.configuratio n.info.action.service.imp.ParameterValueSql ListSelectionMethod.execQuery select b.brand_name, b.stamp_text from plmbrand_info a, plmdd_brand_info b where (any a.superbrand='plm_file' and not superbrand='plm_portfolio' and not superbrand = 'plm_rm_schemeal_record' and not superbrand = 'plm_rm_schemeal_rec_structure') and (a.brand_name = b.brand_name) and (b.nls_key = 'en') and (b.business_rule_id = '1126734901') and not (b.life_state = 3) order by 1,2 81 com.prefvendor.methodmanager.configuratio n.info.action.service.imp.ParameterValueSql ListSelectionMethod.execQuery select sum(col7) as new_salary, sum(col4*col7/col3) as new_bonus from plm_acme_complex_hinfo where col0 in (select employee_id from acme_employee_portfolio 80 dbyte.demo.CalculateSalaryIncreaseEx.calc ulateDepartmentalAdjustmentsOpt select sum(col7) as new_salary, sum(col4*col7/col3) as new_bonus from plm_acme_complex_hinfo where col0 in (select employee_id from acme_employee_portfolio 69 dbyte.demo.CalculateSalaryIncreaseEx.calc ulateDepartmentalAdjustmentsOpt select upper(entity_name),link_id,entity_name,entity_brand,link_cnt,link_owner from plm_portfolio where (is_reference is null or is_reference = 0) order by 1 68 com.prefvendor.mat.schemeext.ctrl.db.DBPo rtfolioTreeNode.addChildNodes SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM (SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT 65 com.prefvendor.plm.assignmentlist.imp.Assi gnmentListReservedCollection.runSQLIntern al Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 16
  • 17. OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC select link_id, entity_name, portfolio_id, portfolio_path, position from plm_portfolio where link_id in (select ancestoid from plm_portfolio where link_id in ('1210665227') and is_hidden = false) order by link_id, position 64 com.prefvendor.imp.objectpath.query.BaseQ uery.getBaseQueryImpl SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM (SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC 63 com.prefvendor.plm.assignmentlist.imp.Assi gnmentListReservedCollection.runSQLIntern al SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM (SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC 63 com.prefvendor.plm.assignmentlist.imp.Assi gnmentListReservedCollection.runSQLIntern al select sum(col7) as new_salary, sum(col4*col7/col3) as new_bonus from plm_acme_complex_hinfo where col0 in (select employee_id from acme_employee_portfolio 62 dbyte.demo.CalculateSalaryIncreaseEx.calc ulateDepartmentalAdjustmentsOpt SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM (SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC 60 com.prefvendor.plm.assignmentlist.imp.Assi gnmentListReservedCollection.runSQLIntern al 59 Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 17
  • 18. SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM (SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC com.prefvendor.plm.assignmentlist.imp.Assi gnmentListReservedCollection.runSQLIntern al SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM (SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 101 201 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC 58 com.prefvendor.plm.assignmentlist.imp.Assi gnmentListReservedCollection.runSQLIntern al SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM (SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC 58 com.prefvendor.plm.assignmentlist.imp.Assi gnmentListReservedCollection.runSQLIntern al SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM (SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 101 201 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC 57 com.prefvendor.plm.assignmentlist.imp.Assi gnmentListReservedCollection.runSQLIntern al Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 18
  • 19. SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM (SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 201 301 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC 57 com.prefvendor.plm.assignmentlist.imp.Assi gnmentListReservedCollection.runSQLIntern al SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM (SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 1 101 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC 57 com.prefvendor.plm.assignmentlist.imp.Assi gnmentListReservedCollection.runSQLIntern al SELECT X.* ,sd1.col0 AS sd1_col0,sd1.col1 AS sd1_col1,sd1.col2 AS sd1_col2,sd1.col5 AS sd1_col5,sd1.col6 AS sd1_col6,wi.link_id AS wlink_id,wi.plm_def_id AS wplm_def_id,wi.flow_id AS wflow_id,sd1.link_id AS sd1_link_id FROM (SELECT q.filling_brand AS q_filling_brand,q.item_brand AS q_item_brand,q.dependency_brand AS q_dependency_brand,q.routeid AS q_routeid,q.event AS q_event,q.item_name AS q_item_name,q.assignment_subject AS q_assignment_subject,q.assignment_name AS q_assignment_name,q.name AS q_name,q.sent_by AS q_sent_by,q.link_id AS q_link_id,q.priority AS q_priority,q.point_id AS q_item_id,q.date_sent AS q_date_sent,q.assignment_state AS q_assignment_state,q.due_date AS q_due_date,q.assignment_number AS q_assignment_number,q.source_db AS q_source_db,q.source_event AS q_source_event FROM plm rank q WHERE ((q.delete_flag=0 AND q.dependency_brand IN ('0','1','2','3','4','5','6'))) ENABLE(RETURN_RANGE 201 301 101 'q.date_sent DESC,q.link_id ASC', ROW_BASED)) X LEFT OUTER JOIN plm_acme_complex_hinfo sd1 ON sd1.flow_id=X.q_routeid LEFT OUTER JOIN plmactionitem wi ON wi. rank_id=X.q_link_id ORDER BY X.q_date_sent DESC,X.q_link_id ASC 56 com.prefvendor.plm.assignmentlist.imp.Assi gnmentListReservedCollection.runSQLIntern al select sum(col7) as new_salary, sum(col4*col7/col3) as new_bonus from plm_acme_complex_hinfo where col0 in (select employee_id from acme_employee_portfolio 53 dbyte.demo.CalculateSalaryIncreaseEx.calc ulateDepartmentalAdjustmentsOpt select distinct flow_id from plm_acme_complex_hinfo where col0 in (select employee_id from acme_employee_portfolio) 52 dbyte.demo.CalculateSalaryIncreaseEx.calc ulateDepartmentalAdjustments Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 19
  • 20. Heavy Queries by Total Duration While one execution of the query doesn't take long time to execute, the queries listed in this section were executed enough times to account for the significant total execution time; hence, impacting overall performance of the application. If single execution of the query takes long time, and the query is executed multiple times, it might get listed in the 'Heavy Queries' section as well. If the queries could not be executed fewer times, retrieval and cashing of the data may represent one of the viable solutions improving efficiency. Top 20 displayed. 1 SQL statement that was executed more that 300 times Statement Total Duration (ms) Count Executed Method select link_id, modify_date from plm_brand_info where complex_name = 'acme_complex_hinfo' 13020 7741 com.prefvendor.pls.utils.DBUtils.executeQue ry Discovered Byte © 2013. All rights reserved www.DiscoveredByte.com 20