APAR status
Closed as program error.
Error description
Error Message: Reduced performance or even OOM due to excessive GC, due to frequent aborted Scavenge. . Stack Trace: N/A . Frequent series of events when percolated global GC caused by an aborted Scavenge, does not end up with successful allocation from Nursery, but from Tenure. Also, subsequent allocations would trigger Scavenge GCs, even though Nursery has plenty of free space. <gc-op id="1111" type="scavenge" timems="1875.393" contextid="1108" timestamp="2018-09-21T16:28:41.557"> <scavenger-info tenureage="5" tenuremask="fde0" tiltratio="81" /> <memory-copied type="nursery" objects="668" bytes="268578080" bytesdiscarded="805258064" /> <memory-copied type="tenure" objects="1" bytes="268323976" bytesdiscarded="0" /> <copy-failed type="nursery" objects="1" bytes="268323976" /> <copy-failed type="tenure" objects="4" bytes="1073295904" /> <ownableSynchronizers candidates="292" cleared="0" /> <warning details="aborted collection due to insufficient free space" /> </gc-op> .... <percolate-collect id="1115" from="nursery" to="global" reason="failed tenure threshold reached" timestamp="2018-09-21T16:28:41.557"/> .... <af-end id="1126" timestamp="2018-09-21T16:28:41.580" threadId="00007FFC981C1CE0" success="true" from="tenure-soa"/> <<< normally should come from Nursery <exclusive-end id="1127" timestamp="2018-09-21T16:28:41.580" durationms="1899.036" /> .... <af-start id="1129" threadId="000000000241DFE0" totalBytesRequested="24" timestamp="2018-09-21T16:28:41.581" intervalms="1899.179" type="nursery" /> <mem type="allocate" free="4949081512" total="5501747200" percent="89" /> <<< GC triggered, but plenty of free memory
Local fix
The problem could be somewhat reduced by increasing heap size, especially Tenure space.
Problem summary
After a percolate global GC which follows an aborted Scavenge, further Nursery allocation would be incorrectly inhibited. The problem would often be implicitly cleared by next Scavenge itself, but in more extreme case, this would lead to a series of aborted and percolate global GCs.
Problem conclusion
Percolate global GC is fixed to allow Nursery allocations. . This APAR will be fixed in the following Java Releases: 8 SR5 FP25 (8.0.5.25) . Contact your IBM Product's Service Team for these Service Refreshes and Fix Packs. For those running stand-alone, information about the available Service Refreshes and Fix Packs can be found at: https://www.ibm.com/developerworks/java/jdk/
Temporary fix
Comments
APAR Information
APAR number
IJ10680
Reported component name
J9 COMMON CODE
Reported component ID
620700127
Reported release
270
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2018-10-22
Closed date
2018-10-22
Last modified date
2018-11-06
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
J9 COMMON CODE
Fixed component ID
620700127
Applicable component levels
R270 PSY
UP
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSNVBF","label":"Runtimes for Java Technology"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]
Document Information
Modified date:
21 February 2022