Memory leak in PPM sync job with Agile Central may cause OutOfMemoryExceptions in the BG

Document ID : KB000103525
Last Modified Date : 27/06/2018
Show Technical Document Details
Issue:
BG service crashes with OOM error.
Analysis of heap dumps shows PerformanceMonitor TimingElements left over in threads that have run the Agile Central Sync job.
 
OQL window for the heap dump, search on the same query: select * from java.lang.String s where toString(s) = "syncMilestones"
 
Expected Results: As the job is completed (and even as that performance timing element should have been completed and popped off the stack), it should not be present. It should only be present when the job is actually running and actually in that part of the job.
 
Actual results: Now the string may appear twice, as another thread will be also encumbered by the deallocated stack. If left unchecked this will go and grow through all the worker threads. Customers that are having a lot of AC project sync operations may find that each performance timing stack consumes >200MB of ram, sometimes >350MB of ram. Once this starts to populate all 10 job threads, the bg may crash with an java.lang.OutOfMemoryException error.
 
Resolution:
Caused by DE36641
Fixed in 15.4
15.2.0.4
15.3.0.1