IBM Support

IJ10680: RECURRENT ABORTED SCAVENGE

Subscribe

You can track all active APARs for this component.

 

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