Database Tuning – Partitioning P6 Tables that supporting partitioning: PROJWBS PROJECT UDFVALUE If you have large number of rows, you should consider partitioning, as these tables are heterogeneous. Please see Oracle Knowledgebase Doc ID 912820.1 for more details on database partitioning with P6
Database Tuning – What Else? Remaining database tuning is more reactive -- default db settings as set up by P6 db installer are pretty good. AWR Reports – Generate as needed if application performance drops and you suspect database is the bottleneck. Look at “SQL ordered by Elapsed Time” first. Determine if expensive queries belong to P6 by looking at SQL Module column for “P6WebApp”. Your DBA may find the performance of a query could be improved in your environment with a SQL hint.
JVisualVM – connect remotely To monitor remote JVM, start remote JVM up using the following JVM options which enable JMX remote connections: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=6789 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false ** -Djava.rmi.server.hostname=<IPAddressOfThisMachine> ** -Djava.rmi.server.useLocalHostname=true
** Only add the last 2 options if having trouble connecting
What should I use for –Xmx ? Java’s –Xmx parameter controls maximum heap available You want at least 1.5GB of wiggle room in your OS after all apps (JVMs) are using all of their max heap Example: Running “free –m” on a 16GB Linux box shows 11GB free when everything except your target JVM is loaded. Therefore your target JVM should set –Xmx to no more than 9.5GB.
Lifecycle of Loading a Java Applet in P6 (EPS, Activities, Resources) “@ Loading” “Loading data…” “Processing data…”
Applet code is being Applet is requesting Applet is generating loaded, verified and project or activity data and drawing grid initialized by the from the server. control and Gantt chart browser (.jar files
Internet Explorer issue with running 64 bit JVM Problem: IE 11 & 12 versions cannot load the 64 bit Java plugin by default. IE 11 and 12 versions launch the main iexplore.exe process as 64 bit, but the actual tabs run as separate 32-bit processes (you can see this in Task Manager - iexplore.exe*32). So any pages in these tabs will only load the 32-bit Java plugin. There is documentation on Microsoft’s site that says that turning on the IE setting “Enable Enhanced Protected Mode” will overcome this issue, however in practice I have never seen this work – IE still launches 32-bit iexplore sub-processes for the tabs. In order to force IE to always run its tabs as 64 bit processes (and enable launching of 64 bit Java plugin), you must change registry settings for IE: In hive locations: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN and HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main, change the value TabProcGrowth to “0”. Its original value was probably “Medium” or “1”. This will force IE to run the tabs in the same process as the main 64-bit process, and therefore the 64-bit Java plugin will be used.
Bonus: Tricks for Power Users Quickly switch between Activity View and EPS View You can have EPS and Activity views open in 2 different tabs.
Do this by first opening EPS view, then right click on Activities tab and choose “Open in New Tab”. Having both open will use more memory, but it will allow quick jumps between the 2 views while building a schedule.
Caution: These 2 tabs share the same session, so if you log out of P6 in one, you will lose any un-saved data in the other tab if you have not saved it.