Showing posts with label upgrade. Show all posts
Showing posts with label upgrade. Show all posts

Monday, June 1, 2015

IBM BPM PC servre throwing OOM error and High CPU usage after 7.5.1.2 upgrade from 7.5.1.1

Problem::
Getting OutofMemory error and High CPU usage of applicaiton server just after upgrading to IBM BPM 7.5.1.2
We have raised PMR to IBM for same and solution we got was as below.

Solution ::
After upgrading BPM 7.5.1.1 to 7.5.1.2 all snapshots will be some kind 
of 'fixed'. Hence, those are loaded in the heap and could allocate a   
lot of memory, depending on the amount. This operation is called       
UserAttributeDefinitionRepair and is an one time operation. So when it 
is completed once, it is not executed again. If the system crashes     
during this operation, BPM tries to re-run it again and will probably  
fail again.                                                            
                                                                        
One can verify, that this process is running, doing the following: To  
check if the 'UserAttributeDefinitionRepair' is still running, please  
check table LSW_SYSTEM and look for the PROPKEY                        
'UserAttributeDefinitionRepair'. If its PROPVALUE is not COMPLETED,    
than the process is not finished yet.                                  
                                                                        
In order to regulate the number of loaded snapshots one can adjust the 
Branch Context Cache Size. We suggested to use the following action    
plan:                                                                  
                                                                        
1) Change the branch-context-max-cache-size to 64 and monitor the      
system, if OOM occurs (testing now)                                    
2) Change the branch-context-max-cache-size to 32 and monitor the      
system, if OOM occurs,                                                 
3) Install the recommended fixes for BPMSnapshotCleanup and dependency 
ifixes on top of 7.5.1.2.                                              
 - 7512 tab                                                             
4) Run BPMSnapshotCleanup command as instructed to clean up unneeded   
 snapshots.                                                            
main.doc/managinglib/topic/managing_snapshots_i.html?cp=SSFPJS_7.5.1   
5) After clean up database, start server and monitor the system.       
                                                                        
Steps 1 and 2 might be the most crucial. Reducing the cache size causes
to be not that much Snapshots be loaded in the heap at once. As a      
result, the whole process will take longer, but it will also not fail. 
This value can be adjusted after the process is once finished (see     
above: PROPVALUE shows COMPLETED then).                                
                                                                        
Steps 3 to 5 are recommended in order to remove old, unused snapshots, 
that influence the whole process. Keeping the system clean is a good   
approach in general. Those cleaning operations are just available on   
BPM 7.5.1.2 and not 7.5.1.1. See:                                      
ofmemory-regarding-poversions/                                         
                                                                        
In order to prevent the whole problem, you can use the following       
process for further migrations from BPM 7.5.1.1 to BPM 7.5.1.2:        
                                                                        
1) Identify the process apps and toolkits which have the largest numbers
of snapshots by running DB queries. Take note.                         
2) Repeat the following steps to each process app or toolkit will be   
 cleaned.                                                              
    a) Create a new snapshot;                                          
    b) Export snapshot created in a);                                   
    c) Archive and delete process app or toolkit;                      
    d) Re-import snapshot exported in b).                              
                                                                        
    Note: If multiple versions of toolkit snapshots are referenced,    
please do the following:                                               
    a1) Export all toolkit snapshots to keep one by one;               
    b1) Archive and delete the toolkit;                                 
    c1) Import toolkit snapshot in the desired sequence, import the    
oldest snapshot first. Do NOT import them with dependent process apps  
since it may potentially messed up the toolkit snapshot levels.         

Wednesday, November 13, 2013

After IBM BPM 7511 upgrade old task started from deactivated snapshot failing

Recently we have upgraded to IBM BPM 7511 versino from 7510 and after upgrade we monitored that instances are failing for all the sanpshots which are deactivated. That means if you have started an instance from snpashot 1.0 and then deactivated that snpashot and instance migration was also not performed. All the running instances having referance to snpashot 1.0 will fail.

After investigation we found that it is due to new properties added in 7511.
Business Process Manager Version 7.5.1 Fix Pack 1 added the following new properties:
  1. block-deactivated-snapshot-favorite-progression block-deactivated-snapshot-task-progression

These two properties exists in the "99Local.xml" configuration file, are defined, by default, with value "True". This default value for these properties will stop in-flight tasks on the deactivated snapshot.
If you want to process or excute in-flight tasks or instances on deactivated snapshots, you have to change this property to "False"
Note: You do not want to modify the 99Local.xml configuration file directly. Instead, use the 100Custom.xml file to override the values using following steps
To execute these in-flight tasks, complete the following steps: 
1) Locate the 100Custom.xml file.
2) Add the following XML code to the file:
  1. <properties>
  2. <server merge="mergeChildren">
  3. <block-deactivated-snapshot-favorite-progression merge="replace">false
  4. </block-deactivated-snapshot-favorite-progression>
  5. <block-deactivated-snapshot-task-progression merge="replace">false
  6. </block-deactivated-snapshot-task-progression>
  7. </server>
  8. </properties>
3) Restart the server.