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

Assertion botch: excessivly large digit 20 occurs every second on one box in clu

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: P3 P3
    • None
    • 1.3.1_07
    • hotspot
    • generic
    • solaris_8

      rather bizarre bug that we're having problems nailing down.

      Customer has BEA weblogic running in a cluster with JDK 1.3.1_07. machines are the same and configures the same. Sun Netra T4 (2 X UltraSPARC-III), 2 CPU, 4GB MEM, 2x 36GB disk Only one of them shows this error. It used to be a backup so they weren't too concerned about the exception, but now it's been moved into production. This gets thrown once a second.
      This shows up in 1.3.1_03 and also 1.3.1_08(only other versions tested)

      java.lang.RuntimeException: Assertion botch: excessivly large digit 20
      java.lang.RuntimeException: Assertion botch: excessivly large digit 20
              at java.lang.FloatingDecimal.dtoa(FloatingDecimal.java:760)
              at java.lang.FloatingDecimal.<init>(FloatingDecimal.java:500)
              at java.lang.Float.toString(Float.java:124)
              at java.lang.String.valueOf(String.java:2152)
              at java.lang.Float.toString(Float.java:278)
              at weblogic.servlet.logging.TimeLogField.logField(TimeLogField.java:37)
              at weblogic.servlet.logging.ELFLogger.log(ELFLogger.java:138)
              at weblogic.servlet.logging.LogManagerHttp.log(LogManagerHttp.java:324)
              at weblogic.servlet.internal.HttpServer.log(HttpServer.java:954)
              at weblogic.servlet.internal.ServletResponseImpl.send(ServletResponseImpl.java:1198)
              at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2549)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:153)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:134)
      >
      <Apr 23, 2003 1:03:09 PM PDT> <Error> <kernel> <000802> <ExecuteRequest failed
       java.lang.RuntimeException: Assertion botch: excessivly large digit 891908706
      java.lang.RuntimeException: Assertion botch: excessivly large digit 891908706
              at java.lang.FloatingDecimal.dtoa(FloatingDecimal.java:760)
              at java.lang.FloatingDecimal.<init>(FloatingDecimal.java:500)
              at java.lang.Float.toString(Float.java:124)
              at java.lang.String.valueOf(String.java:2152)
              at java.lang.Float.toString(Float.java:278)
              at weblogic.servlet.logging.TimeLogField.logField(TimeLogField.java:37)
              at weblogic.servlet.logging.ELFLogger.log(ELFLogger.java:138)
              at weblogic.servlet.logging.LogManagerHttp.log(LogManagerHttp.java:324)
              at weblogic.servlet.internal.HttpServer.log(HttpServer.java:954)
              at weblogic.servlet.internal.ServletResponseImpl.send(ServletResponseImpl.java:1198)
              at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2549)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:153)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:134)
      >
      <Apr 23, 2003 1:03:09 PM PDT> <Error> <HTTP> <101214> <Included resource or file "/managed_content/webapp/components/dev2dev/docs/jmsfaq.html" not found from requested resource "/docs/jmsfaq.jsp".>
      <Apr 23, 2003 1:03:09 PM PDT> <Error> <kernel> <000802> <ExecuteRequest failed
       java.lang.RuntimeException: Assertion botch: excessivly large digit 20
      java.lang.RuntimeException: Assertion botch: excessivly large digit 20
              at java.lang.FloatingDecimal.dtoa(FloatingDecimal.java:760)
              at java.lang.FloatingDecimal.<init>(FloatingDecimal.java:500)
              at java.lang.Float.toString(Float.java:124)
              at java.lang.String.valueOf(String.java:2152)
              at java.lang.Float.toString(Float.java:278)
              at weblogic.servlet.logging.TimeLogField.logField(TimeLogField.java:37)
              at weblogic.servlet.logging.ELFLogger.log(ELFLogger.java:138)
              at weblogic.servlet.logging.LogManagerHttp.log(LogManagerHttp.java:324)
              at weblogic.servlet.internal.HttpServer.log(HttpServer.java:954)
              at weblogic.servlet.internal.ServletResponseImpl.send(ServletResponseImpl.java:1198)
              at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2549)
              at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:153)
              at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:134)


      The snippet of code that is producing the problem is

          long milsec = System.currentTimeMillis() -
               metrics.getInvokeTime();
             Float sec = new Float(milsec / 1000.0);

             try {
             buff.append(sec.toString());
           .......


      now the really bizarre thing is that when we put a debug line
      (system.out.println("The value is" + value) ) in to see what the value actually is the problem goes away.

      Running with -Xint the problem goes from once a second to about 4-5 times per day so this doesn't appear to be JIT specific.

      Looks like it could be timing related.

            Unassigned Unassigned
            msusko Mark Susko (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: