db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dag H. Wanvik (JIRA)" <derby-...@db.apache.org>
Subject [jira] Commented: (DERBY-1338) Client tests DerbyNetNewServer and NSinSameVM fail with NoClassDefFoundError: DRDAProtocolExceptionInfo when run from classes dir
Date Mon, 22 May 2006 13:20:30 GMT
    [ http://issues.apache.org/jira/browse/DERBY-1338?page=comments#action_12412772 ] 

Dag H. Wanvik commented on DERBY-1338:
--------------------------------------

(quote from mail thread)

Dag says:

I looked at this again: This is my understanding so far.

I think this is a problem with the test and/or the server code.
Apperently there is a race condition between the connection being
closed and the shutdown of the server.  This test starts its own
server and then opens and closes a connection to it, in this case via
the derby client driver.  Skeleton code:

  server.start
  conn = DriverManager.getConnection(<derby client>)
  conn.close
         <inserting a small sleep here makes problem go away>
  server.shutdown

By inserting a small sleep between the close and the shutdown, the
test works in my environment. I would guess the problem appears
because the server gets to (start) shut down *before* the close
message process is started/completed, and when the server DRDA
protocol code is in the process of handling the close, the server is
going down, hence the class not found exceptions.

The larger question is: Is there any way to avoid this in the server?
Users can hit this one, too, and it would be nice if the server were
more rubust. I think is possibly related to the problem discussed
under JIRA-1219 and DERBY-1326, although in those cases, the problems
occur further down the line: ghost sessions remain after shutdown
causing trouble on restart. 

> Client tests DerbyNetNewServer and NSinSameVM fail with NoClassDefFoundError: DRDAProtocolExceptionInfo
when run from classes dir
> ---------------------------------------------------------------------------------------------------------------------------------
>
>          Key: DERBY-1338
>          URL: http://issues.apache.org/jira/browse/DERBY-1338
>      Project: Derby
>         Type: Bug

>  Environment: Sun JDK 1.4.2, Sun JDK 1.5
>     Reporter: Dag H. Wanvik
>     Priority: Minor

>
> When run from Sun JDK 1.4.2 and Sun JDK 1.5, these two tests fail when run from the
> classes directory. They work, though, when run from jars.
> Running NSinSameVM in my sandbox:
> bash-3.00$ java   -Dframework=DerbyNetClient org.apache.derbyTesting.functionTests.harness.RunTest
derbynet/NSinSameJVM.java
> *** Start: NSinSameJVM jdk1.4.2_05 DerbyNetClient 2006-05-22 14:49:05 ***
> Initialize for framework: DerbyNetClient
> startServer = false. Bypass server startup
> 6 add
> > java.lang.NoClassDefFoundError: org/apache/derby/impl/drda/DRDAProtocolExceptionInfo
> Test Failed.
> *** End:   NSinSameJVM jdk1.4.2_05 DerbyNetClient 2006-05-22 14:49:27 ***
> I get similar behavior for DerbyNetNewServer.  I ran this on a Solaris 10/i86x box. Davis
has seen it too, see 
> initial discusson on this thread: http://www.nabble.com/forum/ViewPost.jtp?post=4477600&framed=y

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Mime
View raw message