Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4797189

Finalizers not called promptly enough

    XMLWordPrintable

    Details

    • Type: Enhancement
    • Status: Closed
    • Priority: P3
    • Resolution: Won't Fix
    • Affects Version/s: 1.1.6, 1.3.1_12, 1.4.1, 1.4.2, 6u7-rev, 6u10, 6u23
    • Fix Version/s: 9
    • Component/s: hotspot
    • Subcomponent:
      gc
    • Introduced In Build:
      1.1
    • Introduced In Version:
      1.1
    • CPU:
      generic, x86, sparc
    • OS:
      generic, solaris_7, solaris_9, solaris_10, windows_2000

      Description

      Name: nt126004 Date: 12/20/2002


      FULL PRODUCT VERSION :
      java version "1.4.1_01"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1_01-b01)
      Java HotSpot(TM) Client VM (build 1.4.1_01-b01, mixed mode)

      FULL OPERATING SYSTEM VERSION :
      SunOS 5.9 Generic_112233-02 sun4u sparc SUNW,Sun-Fire-880

      ADDITIONAL OPERATING SYSTEMS :
      Linux 2.4.18-17.8.0 #1 Tue Oct 8 13:51:08 EDT 2002 i686 i686
      i386 GNU/Linux



      A DESCRIPTION OF THE PROBLEM :
      The JVM seems to have a memory leak: when run with the -Xmx
      and -Xms options, then the JVM seems to start filling up all
      the available memory of the system, and then throws an out
      of memory exception.

      Even without using the -Xm* options the program grows uncontrolably on Solaris.

      The problem presents both on a Red-hat Linux system and on a
      Solaris system, even using -Xint or -Xfuture options.
      Maybe also other systems are affected by this bug, though I
      cannot confirm.

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      1. Run the included program
      2. the system will swap and eventually you'll have an OutOfMemoryError and
      a core dump.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      Obviously, I didn't expect it to fill up all my memory :-)

      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------
      import java.util.zip.*;

      public class Bug {
              public static void main( String args[] ) {
                      while ( true ) {
                              /* If ANY of these two lines is not commented, the JVM
                               runs out of memory */
                              final Deflater deflater = new Deflater( 9, true );
                              final Inflater inflater = new Inflater( true );
                      }
              }
      }
      ---------- END SOURCE ----------

      CUSTOMER WORKAROUND :
      One way to avoid the problem is by passing the -Xincgc
      option to the JVM
      (Review ID: 173339)
      ======================================================================
      ###@###.### 10/15/04 20:43 GMT

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              ysr Y. Ramakrishna
              Reporter:
              nthompsosunw Nathanael Thompson (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              13 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Imported:
                Indexed: