Out of Memory errors, why do they occur in the Universal Worklist?
The purpose of this document is to take into account the variables that will affect memory consumption in relation to the Universal Worklist.
Many variables need to be taken into account when dealing with the Universal Worklist in relation to having enough free memory. Take into account the following considerations when working with and configuring the Universal Worklist in relation to memory management:
- Number of users in the backend system accessing the Universal Worklist
- Number of work items per user
- Number of connectors used
- Removing UWL from your landing page (first page when you log on to the portal)
- Limiting the amount of time that refresh is pressed. In newer releases, configure the refresh of completed items(> 7.02 SP 2 & 720 SP 2 backend and portal versions)
- Limit the amount of custom attributes that you have configured
- Retrieve Custom Attribute via Primary Pull should be switched off
- Ensuring that User Roles are set up on the system
By not taking these variables into consideration, you may experience poor performance and out of memory errors from within the Universal Worklist.
Why should these considerations be taken into account?
On each logon to the portal, a call to EACH connector that is configured in the Universal Administration is made. For EACH connector, the fetch is done to pull back ALL of
the work items in the workflow inbox of this user in SAP transaction SBWP or from the non SAP provider systems. If UWL is placed on the landing page, this series of events happen for each user that is logging into the portal. Likewise, it is the same for the Refresh operation. This could put serious strain on to a system that doesn't have enough memory and processing power.
For each custom attribute an additional call again is made to the backend system. So if you have two additional columns in the UWL - that is two additional calls on top of the calls that are already made from the backend system to the Universal Worklist.
Take a look at the hypothetical scenario:
250 users access the UWL on a daily basis.
The UWL has 4 connectors set up to four different R/3 systems.
Each user has 250 workflow items in each system.
If 5 users out of the 250 access the Universal Worklist at exactly the same time:
Approximately 50mb of free space is needed for the call for 5 users.
250 work items x 4 connectors = 1000 x 5 users = 5000 x 10kb = 50000 kb = ~ 50mb
The payload between JCo and the WebFlowConnector is approximately 8-10kb per item.
There would have to be approximately 50mb free memory for these operations to complete.
Therefore it is very important that there is enough free memory on the server where the Universal Worklist is running.
- Using Universal Worklist
- Universal Worklist Configuration
- Universal Worklist Sizing Guide - Navigate to: Sizing, Sizing Guidelines, Database and Technology, SAP NetWeaver, Scroll down to Universal Worklist
Related SAP Notes/KBA's:
SAP KBA: 1577547 - UWL Performance Tips and Considerations