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

HotSpot "...BC" error under Linux (with new test case)

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P4
    • Resolution: Cannot Reproduce
    • Affects Version/s: 1.2.1, 1.3.0
    • Fix Version/s: None
    • Component/s: hotspot
    • Subcomponent:
    • CPU:
      x86
    • OS:
      linux

      Description



      Name: tb29552 Date: 11/24/2000


      java version "1.3.0"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0)
      Java HotSpot(TM) Client VM (build 1.3.0, mixed mode)


      Source code:
      ----------------------------------
      import java.util.*;
      import java.lang.*;
      import java.io.*;

      public class TreeMapTest {

          public TreeMapTest() {}

          public static void main(String[] args) {
      int nodeCount = 1000000;
      int getCount = 10000;
      int contLength = 512;

      if (args.length > 0) nodeCount = Integer.parseInt(args[0]);
      if (args.length > 1) getCount = Integer.parseInt(args[1]);
      if (args.length > 2) contLength = Integer.parseInt(args[2]);

      TreeMap tm = new TreeMap();

      Object key, value;

      long start, end;

      char[] contChar = new char[contLength];

      for (int i = contLength; --i >= 0; ) {
      contChar[i] = (char) (150 + 100 * Math.random());
      }

      String content = new String(contChar, 0, contChar.length);

      System.out.println("Start adding " + nodeCount +
      " key-value pairs.");

      for (int i = nodeCount; --i >= 0; ) {
      value = (Object) new String(content + i);
      key = new Integer(i);
      tm.put(key, value);
      }

      System.out.println("Stored " + tm.size() + " key-value mappings.");

      Integer[] getKey = new Integer[getCount];

      while(true) {

      for (int i = getCount; --i >= 0; ) {
      getKey[i] = new Integer((int) (Math.random() * nodeCount));
      }

      System.out.println("Press ENTER to start getting " +
      getCount + " random values.");
      try {
      while (System.in.read() == -1) {}
      } catch (IOException e) {}

      start = System.currentTimeMillis();

      for (int i = getCount; --i >= 0; ) {
      value = tm.get(getKey[i]);
      }

      end = System.currentTimeMillis();
      System.out.println("Time to get " + nodeCount + " values: " +
      (end - start) + " ms.");
      }
          }
      }

      ------------------------------------------------
      Command used to run:
      java -Xms250M -Xmx350M TreeMapList 100000 10000 100

      --------------------------------------------
      Output:Start adding 100000 key-value pairs.
      #
      # HotSport Virtual Machine Error, Unexpected Signal 11
      # ...
      # Error ID: 4F533F4C494E55580E43505005BC
      #
      # Problematic Thread: prio=1 tid=0x804dc20 nid=0x6350 runnable
      #
      An irrecoverable stack overflow has occurred.
      Aborted
      (Review ID: 112742)
      ======================================================================

      Name: yyT116575 Date: 01/03/2001


      java version "1.3.0"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0)
      Java HotSpot(TM) Client VM (build 1.3.0, mixed mode)

      javac -deprecation -classpath /com/home/cgs/lib/jaws.jar:.
      LifeAppletBeanInfo.java
      #
      # HotSpot Virtual Machine Error, Unexpected Signal 11
      # Please report this error at
      # http://java.sun.com/cgi-bin/bugreport.cgi
      #
      # Error ID: 4F533F4C494E55580E43505005BC
      #
      # Problematic Thread: prio=1 tid=0x804daa8 nid=0x2510 runnable
      #
      An irrecoverable stack overflow has occurred.

      --- begin source ---

      import java.awt.Image;
      import java.beans.*;

      public class LifeAppletBeanInfo
          implements BeanInfo
      {

          public BeanDescriptor getBeanDescriptor() {
              return null;
          }

          public EventSetDescriptor[] getEventSetDescriptors() {
              return null;
          }

          public int getDefaultEventIndex() {
              return -1;
          }

          public PropertyDescriptor[] getPropertyDescriptors() {
              return null;
          }

          public int getDefaultPropertyIndex() {
              return -1;
          }

          public MethodDescriptor[] getMethodDescriptors() {
              return null;
          }

          public int getDefaultMethodIndex() {
              return -1;
          }

          public BeanInfo[] getAdditionalBeanInfo() {
              return null;
          }

          public Image getIcon(int iconKind) {
              return null;
          }

      }

      --- end source ---
      (Review ID: 114302)
      ======================================================================

      Name: yyT116575 Date: 01/15/2001


      java version "1.3.0rc1"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0rc1-b17)
      Java HotSpot(TM) Client VM (build 1.3.0rc1-b17, mixed mode)


      Error output on console is
      #
      # HotSpot Virtual Machine Error, Unexpected Signal 11
      # Please report this error at
      # http://java.sun.com/cgi-bin/bugreport.cgi
      #
      # Error ID: 4F533F4C494E55580E43505005BC
      #
      # Problematic Thread: prio=1 tid=0x804dc50 nid=0x72c0 runnable
      #
      /usr/bin/javaswarm: line 1: 29376 Aborted
      APPHOME=/usr/local/jdk1.3
      LD_LIBRARY_PATH=/usr/local/jdk1.3/jre/lib/i386/native_threads:/usr/local/jdk1.3/jre/lib/i386:/usr/local/jdk1.3/jre/lib/i386/hotspot::/usr/lib:/usr/lib/swarm:/usr/X11R6/lib:
      CLASSPATH='.:/usr/share/swarm/swarm.jar:/usr/share/swarm/kawa.jar:/usr/local/jdk1.3/jre/lib/rt.jar:'
      /usr/local/jdk1.3/jre/bin/i386/native_threads/java 'TextRasterDemo'

      ---------------------
      If you have the Swarm toolkit installed (www.swarm.org) you can run this program
      to cause the crash:



      import swarm.Globals;
      import swarm.activity.Schedule;
      import swarm.activity.ScheduleImpl;
      import swarm.activity.Activity;
      import swarm.objectbase.Swarm;
      import swarm.simtoolsgui.GUISwarmImpl;
      import swarm.defobj.Zone;
      import swarm.Selector;

      import java.util.ArrayList;

      import java.awt.Frame;
      import java.awt.Container;
      import java.awt.Image;
      import java.awt.Graphics;
      import java.awt.image.MemoryImageSource;
      import java.awt.Window;
      import java.awt.Color;


      public class TextRasterDemo extends GUISwarmImpl {
        final int w = 256;
        final int h = 256;
        final int x = 100;
        final int y = 100;

        MemoryImageSource source;
        Image image;
        TextRaster textRaster;
        TextRaster textRaster2;ArrayList rasterList;

        Schedule schedule;


        TextRasterDemo (Zone aZone) {

          super (aZone);
          rasterList = new ArrayList ();

       
          textRaster = new TextRaster ();
          textRaster2 = new TextRaster ();

          rasterList.add(textRaster);
          rasterList.add(textRaster2);

          Frame frame = new WrapperFrame ();
          frame.setBounds (100, 100, w, h);
          frame.add (textRaster);
          frame.add (textRaster2);
          frame.setBackground(Color.green);

          frame.show ();
        }


        public Object buildActions () {
          schedule = new ScheduleImpl (getZone (), 1);


          try {
            schedule.at$createActionForEach$message
              (0, this, new Selector (getClass (), "move", false));
          } catch (Exception e) {
            e.printStackTrace ();
            System.out.println("third try failed");
          }

          return this;
        }

        public Activity activateIn (Swarm swarmContext) {
          super.activateIn (swarmContext);
          
          schedule.activateIn (this);
          return getActivity ();
        }
        
        public void move () {
          textRaster.repaint ();
          getActionCache ().doTkEvents ();
        }

        class WrapperFrame extends Frame {
          public void update (Graphics g) {
            super.update(g);
            paint (g);
          }
        }
        
        class TextRaster extends Container {
          int pixels[] = new int[w * h];
          Container container;
          
          public TextRaster () {
            super ();
         }

          public void update (Graphics g) {
            paint (g);
          }
          
          public void paint (Graphics g) {
            int textX, textY;
            textX = Globals.env.uniformIntRand.getIntegerWithMin$withMax (0, w);
            textY = Globals.env.uniformIntRand.getIntegerWithMin$withMax (0, h);
           // g.drawImage (image, 0, 0, this);
            g.drawString ("Hi", textX, textY);
        // g.drawString ("Hi", 33, 44 );
            g.drawRect ( 4, 5, 30 , 80);
          }
        }
        

        static public void main (String args[]) {
          Globals.env.initSwarm ("TextRasterDemo", "0.0", "###@###.###",
                                 args);
          
          TextRasterDemo textRasterDemo =
            new TextRasterDemo (Globals.env.globalZone);

          textRasterDemo.buildObjects ();
          textRasterDemo.buildActions ();
          textRasterDemo.activateIn (null);
          textRasterDemo.go ();
          System.exit (0);
        }
      }
      (Review ID: 115176)
      ======================================================================

      Name: yyT116575 Date: 01/25/2001


      java version "1.3.0"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0)
      Java HotSpot(TM) Client VM (build 1.3.0, mixed mode)


      1. I have an aplication, write in Java, that need a very much memory, because it keeps some (25-35) TreeMap with many data (one item aproximately 2-3 Kb). I run the application with the following :

      java -Xmx512M MyProgram &

      The application is a multithreaded SocketServer that keeps in memory the dates and response to the clients, which can connects to the server over a
      SocketServer.

      2. The application have 1900 lines (source code).

      3. Exact error message is:
      #
      # HotSpot Virtual Machine Error, Unexpected Signal 11
      # Please report this error at
      # http://java.sun.com/cgi-bin/bugreport.cgi
      #
      # Error ID: 4F533F4C494E55580E43505005BC
      #
      # Problematic Thread: prio=1 tid=0x60d201a8 nid=0x2439 runnable
      #

      5. I run the application to Linux Server RedHat 6.2 with 2 Pentium III
      proccesor at 550MHz, with SCSI HDD

      In Linux console `uname -a` report :

      Linux ns 2.2.16-22 #1 Tue Aug 22 16:49:06 EDT 2000 i686 unknown
      (Review ID: 115776)
      ======================================================================

      Name: yyT116575 Date: 01/29/2001


      java version "1.3.0"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0)
      Java HotSpot(TM) Client VM (build 1.3.0, mixed mode)

      java -jar ReplicatedAuction_Server.jar

      The source uses a lot of sub classes (mostly CORBA stuff)

      The error message is
      #
      # HotSpot Virtual Machine Error, Unexpected Signal 11
      # Please report this error at
      # http://java.sun.com/cgi-bin/bugreport.cgi
      #
      # Error ID: 4F533F4C494E55580E43505005BC
      #
      # Problematic Thread: prio=1 tid=0x804dbb0 nid=0x1d68 runnable
      #
      Aborted

      The jar executes fine under win2000
      If I put the jar in the CLASSPATH and run the main class it works fine

      (Review ID: 115956)
      ======================================================================

      Name: rmT116609 Date: 02/01/2001


      okidz@bdg:~$ java -version
      An irrecoverable stack overflow has occurred.
      #
      # HotSpot Virtual Machine Error, Unexpected Signal 11
      # Please report this error at
      # http://java.sun.com/cgi-bin/bugreport.cgi
      #
      # Error ID: 4F533F4C494E55580E43505005BC
      #
      # Problematic Thread: prio=1 tid=0x804db40 nid=0x6b46 runnable
      #
      Aborted


      The step to reproduce the problem:
      okidz@bdg:~$ java -version

      Additional info:
      ---------------
      The JVM wouldn't run on this machine:
      okidz@bdg:~$ uname -a; /bin/more /proc/cpuinfo
      Linux bdg 2.4.0 #2 Tue Jan 30 14:54:09 JAVT 2001 i686 unknown
      processor : 0
      vendor_id : GenuineIntel
      cpu family : 6
      model : 7
      model name : Pentium III (Katmai)
      stepping : 3
      cpu MHz : 551.265
      cache size : 32 KB
      fdiv_bug : no
      hlt_bug : no
      f00f_bug : no
      coma_bug : no
      fpu : yes
      fpu_exception : yes
      cpuid level : 2
      wp : yes
      flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36
      mmx fxsr sse
      bogomips : 1101.00

      But runs perfectly on the following machine:
      okidz@okidz:~$ uname -a; java -version; /bin/more /proc/cpuinfo
      Linux okidz 2.4.0 #13 Wed Jan 24 11:17:11 JAVT 2001 i586 unknown
      java version "1.3.0"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0)
      Java HotSpot(TM) Client VM (build 1.3.0, mixed mode)
      processor : 0
      vendor_id : GenuineIntel
      cpu family : 5
      model : 4
      model name : Pentium MMX
      stepping : 3
      cpu MHz : 233.862
      fdiv_bug : no
      hlt_bug : no
      f00f_bug : yes
      coma_bug : no
      fpu : yes
      fpu_exception : yes
      cpuid level : 1
      wp : yes
      flags : fpu vme de pse tsc msr mce cx8 mmx
      bogomips : 466.94
      (Review ID: 116186)
      ======================================================================

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              hhuangsunw Hui Huang (Inactive)
              Reporter:
              tbell Tim Bell
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Imported:
                Indexed: