United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: 5068014 REGRESSION: WARNING: ORBUTIL.connectionRebind printed when using CORBA
5068014 : REGRESSION: WARNING: ORBUTIL.connectionRebind printed when using CORBA

Details
Type:
Bug
Submit Date:
2004-06-24
Status:
Resolved
Updated Date:
2012-10-10
Project Name:
JDK
Resolved Date:
2006-08-30
Component:
other-libs
OS:
linux,generic
Sub-Component:
corba:orb
CPU:
x86,generic
Priority:
P4
Resolution:
Fixed
Affected Versions:
5.0
Fixed Versions:
6

Related Reports
Backport:
Duplicate:

Sub Tasks

Description
Name: jl125535			Date: 06/24/2004


FULL PRODUCT VERSION :
java version "1.5.0-beta3"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-beta3-b55)
Java HotSpot(TM) Client VM (build 1.5.0-beta3-b55, mixed mode, sharing)

ADDITIONAL OS VERSION INFORMATION :
Linux io 2.4.20-4GB #1 Tue Jun 15 09:19:00 UTC 2004 i686 unknown unknown GNU/Linux

A DESCRIPTION OF THE PROBLEM :
Starting with the 1.5.0 beta versions we sometimes get a warning (see below) together with a stack trace while making CORBA calls.


We never got these warnings with 1.4.2_04 and earlier versions. Although nothing seams to go wrong when the warning appears we are concerned that there is a problem in the CORBA implementation.

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Please use the hello example from java.sun.com/j2se/1.5.0/docs/guide/idl/hello.zip
and replace the file HelloClient.java with the code below and start orbd, 
HelloServer and HelloClient as written in the documentation for this example. 
My modified client will shutdown the server, tell the user to restart the 
server within the next 20 seconds (which should be done). After the delay the 
sayHello() method is called again (using the no longer valid object 
reference). Since org.omg.CORBA.SystemException is caught I would expect that 
nothing should be printed to stdout (which is not the case).

HelloClient.java:

import HelloApp.*;
import org.omg.CosNaming.*;
import org.omg.CosNaming.NamingContextPackage.*;
import org.omg.CORBA.*;

public class HelloClient
{
  static Hello helloImpl;

  public static void main(String args[])
    {
      try{
        // create and initialize the ORB
       ORB orb = ORB.init(args, null);

        // get the root naming context
        org.omg.CORBA.Object objRef =
        orb.resolve_initial_references("NameService");
        // Use NamingContextExt instead of NamingContext. This is
        // part of the Interoperable naming Service.
        NamingContextExt ncRef = NamingContextExtHelper.narrow(objRef);

        // resolve the Object Reference in Naming
        String name = "Hello";
        helloImpl = HelloHelper.narrow(ncRef.resolve_str(name));

        System.out.println("Obtained a handle on server object: " 
                           + helloImpl);
        try {
            System.out.println(helloImpl.sayHello());
        } catch (org.omg.CORBA.SystemException ex) {
        }

        // Shutdown server
        helloImpl.shutdown();

        // Tell user to restart the HelloServer
        System.out.println(
            "Please restart HelloServer within the next 20 seconds");

        // Sleep some time
        Thread.sleep(20000);

        try {
            // Use a no longer valid object reference to call server again
            System.out.println(
                "\nUse a no longer valid object reference to call"
                + " server again.\nSince org.omg.CORBA.SystemException"
                + " is caught nothing should\nbe printed to stdout"
                + " which is not the case as can be seen below.\n");
            System.out.println(helloImpl.sayHello());
        } catch (org.omg.CORBA.SystemException ex) {
            // Catch all SystemExceptions
            // If everything works as expected nothing should be printed
            // to stdout.
        }

    } catch (Exception e) {
          System.out.println("ERROR : " + e) ;
      e.printStackTrace(System.out);
      }
    }
}

EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
No warnings are printed when using CORBA.
ACTUAL -
A warning together with a stack trace is printed when making CORBA calls.

ERROR MESSAGES/STACK TRACES THAT OCCUR :
WARNING: ORBUTIL.connectionRebind
org.omg.CORBA.COMM_FAILURE:   vmcid: SUN  minor code: 209  completed: No
        at com.sun.corba.se.impl.logging.ORBUtilSystemException.connectionRebind(ORBUtilSystemException.java:1936)
        at com.sun.corba.se.impl.logging.ORBUtilSystemException.connectionRebind(ORBUtilSystemException.java:1958)
        at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:797)
        at com.sun.corba.se.impl.protocol.giopmsgheaders.MessageBase.callback(MessageBase.java:807)
        at com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:665)
        at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.dispatch(SocketOrChannelConnectionImpl.java:375)
        at com.sun.corba.se.impl.transport.SocketOrChannelConnectionImpl.doWork(SocketOrChannelConnectionImpl.java:950)
        at com.sun.corba.se.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:394)
Jun 18, 2004 11:02:36 AM com.sun.corba.se.impl.protocol.CorbaMessageMediatorImpl handleInput

REPRODUCIBILITY :
This bug can be reproduced often.

Release Regression From : 1.4.2
The above release value was the last known release where this 
bug was known to work. Since then there has been a regression.

(Incident Review ID: 280485) 
======================================================================
###@###.### 2004-06-28

                                    

Comments
SUGGESTED FIX

diff ./src/share/classes/com/sun/corba/se/spi/logging/data/ORBUtil.mc /java/re/jdk/6.0/latest/ws/j2se/src/share/classes/com/sun/corba/se/spi/logging/data/ORBUtil.mc
3c3
< ; %W% %E%
---
> ; @(#)ORBUtil.mc      1.47 04/06/10
114c114
<            9 FINE "Connection rebind")
---
>            9 WARNING "Connection rebind")
                                     
2006-08-04
EVALUATION

Log message is at level WARNING, should be at level FINE.
                                     
2004-09-04
CONVERTED DATA

BugTraq+ Release Management Values

COMMIT TO FIX:
mustang


                                     
2004-09-04



Hardware and Software, Engineered to Work Together