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

JIT 'unknown wrapper intrinsic' error when jdb run against non-existent class

    XMLWordPrintable

Details

    • x86
    • windows_95, windows_98, windows_nt

    Description



      Name: krT82822 Date: 06/29/99


      orig synopsis: "A nonfatal internal JIT (3.00.078(x)) error"

      Simple situation:
      While trying to learn myself how to use 'JDB', I startet jdb with a classname I knew didn't exist. This message came along my screen:

      H:\javakode\Saker>jdb pk_du
      Initializing jdb...
      A nonfatal internal JIT (3.00.078(x)) error 'unknown wrapper intrinsic' has occurred in :
        'sun/tools/debug/RemoteAgent.initSession (Z)V': Interpreting method.
        Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cgi

      pk_du not found
      >

      and that's all there is
      (Review ID: 84965)
      ======================================================================

      6/29/99 kevin.ryan@eng -- user sent mail saying it's win98, not win95

      Name: skT88420 Date: 11/04/99


      java version "1.2.1"
      Classic VM (build JDK-1.2.1-A, native threads)

      I received the following error message
      at the command line input:

      H:\2513Exam1\Prob02>java Prob02
      A nonfatal internal JIT (3.00.078(x)) error 'unknown wrapper intrinsic' has occu
      rred in :
        'ProdConManager.putDataInStorage (I)V': Interpreting method.
        Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cg
      i


      Because of the random delay in my program
      I was running this same program 40 or 50 times to check for proper output each
      time.
      This error occurred on just one of those runs.
      All other times it ran normal with the expected output.

      Here is the source code:

      /*File Prob02.java by Jim Andrews 9/12/99
      for CIS 2513 EXAM 1
        Program was tested using JDK 1.2.1 under Win95

      Without making any changes to the classes named Prob02,
      Producer, and Consumer (other than inserting your name
      where indicated) write a Java application that will
      implement the producer/consumer model on two threads
      named producer and consumer and display the screen output
      shown below.

      The thread named producer counts from 1 to 5 storing the
      count in a single shared storage variable.

      The thread named consumer causes the count to be fetched
      from the shared storage variable and to be displayed.

      You will need to write a single class named ProdConManager
      that manages the storing and fetching of the count in a
      single shared storage variable.

      It is absolutely necessary that all five values are stored,
      all five values are fetched, and the values are stored and
      fetched in the correct order.

      It is also absolutely necessary that your application
      terminates properly by returning control to the operating
      system at the end of every run.

      Since a random delay is inserted into the operation of the
      producer thread, causing the behavior of your program to vary
      from one run to the next, your instructor will confirm
      proper operation by running the program ten times in
      succession and observing the screen output. If there is a
      failure during any of the ten runs, you will get no credit
      for the program. You should test your program in a similar
      manner to confirm proper operation.

      Your program must produce the output shown below during
      every run. Note that the "Storing" screen output message
      is generated by code in the method named putDataInStorage()
      and the "Fetched" screen output message is generated by
      code in the method named getDataFromStorage()

      In putDataInStorage. Storing 1
      In getDataFromStorage. Fetched 1
      In putDataInStorage. Storing 2
      In getDataFromStorage. Fetched 2
      In putDataInStorage. Storing 3
      In getDataFromStorage. Fetched 3
      In putDataInStorage. Storing 4
      In getDataFromStorage. Fetched 4
      In putDataInStorage. Storing 5
      In getDataFromStorage. Fetched 5
      Terminating Main, Insert Your Name Here

      ===========================================================
      */
      class Prob02{
        static ProdConManager prodConManager =
          new ProdConManager();
        static boolean running = true;
        
        public static void main(String[] args){
          Thread producer = new Producer();
          Thread consumer = new Consumer();
          producer.start();
          consumer.start();
          
          //Delay two seconds to allow plenty of time for the
          // two threads to complete their tasks.
          try{ Thread.currentThread().sleep(2000);
          }catch(InterruptedException e){};
          
          System.out.println(
      "Terminating Main, Jim Andrews");
      //System.exit(0);
        }//end main
      }//end class Prob02
      //---------------------------------------------------------

      class Producer extends Thread {
        public void run() {
          int data = 0;

          while (data < 5){//store values of 1 through 5
      Prob02.prodConManager.putDataInStorage(++data);
            try{//insert random delay in producer thread
               Thread.currentThread().sleep(
                 (int)(Math.random()*100));
             }catch(InterruptedException e){};
          }//end while loop
          
          Prob02.running = false; //terminating program
      Prob02.prodConManager.notifyAnyWaitingThreads();
        }//end run method
      }//end class producer

      //---------------------------------------------------------

      class Consumer extends Thread {
        public void run() {
          while (Prob02.running)//fetch and display data
      Prob02.prodConManager.getDataFromStorage();
        }//end run method
      }//end class consumer

      //End problem specification

      //---------------------------------------------------------

      class ProdConManager {
      int value;
      boolean available;

      ProdConManager(){
      value = 0;
      available = false;
      }//end constructor

      synchronized void putDataInStorage(int inData){
      try{
      while(available == true){
      wait();
      }//end while loop
      }catch(InterruptedException E){
      System.out.println("InterruptedException: " + E);
      }//end catch block

      value = inData;
      available = true;
      System.out.println("In putDataInStorage. Storing " + value);
      notify();
      }//end putDataInStorage

      synchronized void getDataFromStorage(){
      try{
      while(available == false){
      wait();
      }//end while loop
      }catch(InterruptedException E){
      System.out.println("InterruptedException: " + E);
      }//end catch block

      System.out.println("In getDataFromStorage. Fetched " + value);
      available = false;
      notify();
            
      }//end getDataFromStorage

      synchronized void notifyAnyWaitingThreads(){
      notify();
      if(Prob02.running == false){
      try{System.out.println(Thread.currentThread());
      Thread.currentThread().sleep(2000);
      }catch(InterruptedException e){};
      System.exit(0);
      }
      }//end notifyAnyWaitingThreads()
      }//end class ProdConManager
      (Review ID: 97445)
      ======================================================================

      Name: skT88420 Date: 11/08/99


      Classic VM (build JDK-1.2.2-W, native threads, symcjit)
      Text of error message:

      "A nonfatal internal JIT (3.00.078(x)) error 'unknown wrapper intrinsic' has
      occurred in: 'sun/rmi/transport/DGCClient$EndPointEntry.registerRefs
      (Ljava/util/List;)Z': Interpreting method.
      Please report this error in detail to http://java.sun.com/cgi-bin/bugreport.cgi
      (Review ID: 97593)
      ======================================================================

      Attachments

        Activity

          People

            Unassigned Unassigned
            kryansunw Kevin Ryan (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: