i-fix Name: PK33315 Problem Summary: ConcurrentModificationException when rendering Menu Cmpnts under heavy load Detailed Problem Description: The following ConcurrentModificationException can occur when rendering Menu Cmpnts under heavy load: java.util.ConcurrentModificationException at java.util.AbstractList$Itr.checkForComodification at java.util.AbstractList$Itr.next at com.ibm.workplace.wcm.services.repository.PACUtils.filterIdsUsingPAC at com.ibm.workplace.wcm.services.repository.PACUtils.filterIds at com.aptrix.pluto.cmpnt.MenuQueryCache.filterIdsForRendering at com.aptrix.pluto.cmpnt.MenuQueryCache.getUuidsFromCache at com.aptrix.pluto.cmpnt.MenuQueryCache.getControllables at com.aptrix.pluto.cmpnt.MenuCmpnt.resolve at com.aptrix.pluto.cmpnt.CmpntUtils.resolveToText at com.aptrix.pluto.cmpnt.BaseReferenceCmpnt.resolve at com.aptrix.pluto.cmpnt.Cmpnt.resolveCmpnt Problem Analysis: The Menu Rendering Code while filtering its cached content ids was iterating over the same list that is updated during syndication and item modification. The rendering code should of made a copy of the list prior to iterating it. Failing Module: WCMSCAL - WCM Scalability/Performance/Stability Problem Solution: The Menu Rendering Code was modified to iterate a copy of the cached content ids as indicated above Affected Users: All Users Requisites: pre-requisite Portal Component: WCM 6.0.0.0 GA build 298.0 pre-requisite interim fixes: PK33025 (these also pre-req: PK33022, PK31598, PK30057) Platform Specific: No Fix pack: This fix will be integrated into WP v6.0.0.1 Installation Steps: NOTE: YOU MUST FIRST DOWNLOAD THE UPDATE INSTALLER TOOL IN ORDER TO INSTALL A FIX. The Portal Update Installer can be downloaded from the following link: http://www.ibm.com/software/genservers/portal/support Preparation: If you have changed the CellName from the default values during the installation of Portal, you would need to also update this change in the [WPS_ROOT]\config\wpconfig.properties file. If you have not changed the default CellName value during the Portal installation, you can skip this step, and continue. - Go to [WPS_ROOT]\config\wpconfig.properties - Search for the "CellName=" field - Change the CellName to point to what you have changed it too, during the installation. Install: - Create a temporary "fix" directory to store the jar file. - Copy jar file to this directory. - Shutdown WebSphere Portal. - Ensure the pre-requisite fix(es) are installed. - Follow the fix installation instructions that are packaged with the Portal Update Installer on how to install a fix. NOTE: If a pre-requisite fix is not installed, the Portal Update Installer will fail and will list the missing pre-requisite fix(es). - Restart WebSphere Portal. - Update the deployed remote rendering portlet: - Log in to Portal as the Portal Administrator - Navigate to: Administration / Portlet Management / Web Modules - Find and select the remote rendering portlet web module - Click the Update Portlet Icon to the right of the selected portlet - Select the portlet WAR file located in: [PortalServer]\installableApps - Click Next and Finish - Log out of Portal for the changes to take effect. Refer to the "Maintaining the cluster" section of the Portal Information Center for information on installing fixes in clustered environments while maintaining continuous availability of your Portal. Note: If you are tryng to deploy the ifix on a horizontal cluster, Before you run the portal update installer, please take note of the cell name of your deployment manager. You can get the cell nameby going to the deployment manager machine, open /profiles//config/cell//cell.xml and there will be a field indicating the cellname. (by default its called servernameCell01) For each node you are applying the ifix too, you need to: - Go into /config/ - Open up wpconfig.properties - Search for the properties Field "CellName=" - Change it to point to the deployment manager's cellname. i.e. "CellName=DeploymentManagerCell" Un-Installation Steps: NOTE: FIXES MUST BE REMOVED IN THE ORDER THEY WERE APPLIED. DO NOT REMOVE A FIX UNLESS ALL FIXES APPLIED AFTER IT HAVE FIRST BEEN REMOVED. YOU MAY REAPPLY ANY REMOVED FIX. - Shutdown WebSphere Portal. - Follow the instructions that are packaged with the Portal Update Installer on how to uninstall a fix. - Restart WebSphere Portal. - Update the deployed remote rendering portlet: - Log in to Portal as the Portal Administrator - Navigate to: Administration / Portlet Management / Web Modules - Find and select the remote rendering portlet web module - Click the Update Portlet Icon to the right of the selected portlet - Select the portlet WAR file located in: [PortalServer]\installableApps - Click Next and Finish - Log out of Portal for the changes to take effect. Refer to the "Maintaining the cluster" section of the Portal Information Center for information on installing fixes in clustered environments while maintaining continuous availability of your Portal. Note: If you are tryng to deploy the ifix on a horizontal cluster, Before you run the portal update installer, please take note of the cell name of your deployment manager. You can get the cell nameby going to the deployment manager machine, open /profiles//config/cell//cell.xml and there will be a field indicating the cellname. (by default its called servernameCell01) For each node you are applying the ifix too, you need to: - Go into /config/ - Open up wpconfig.properties - Search for the properties Field "CellName=" - Change it to point to the deployment manager's cellname. i.e. "CellName=DeploymentManagerCell" DISCLAIMER: This fix has received limited testing only and has not undergone IBM's complete quality assurance process. It is therefore recommended that it be tested in a testing environment before applying it to a working (authoring, production/live) system. You should always backup your data before installing a fix or fixpack.