db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Deepa Remesh (JIRA)" <derby-...@db.apache.org>
Subject [jira] Commented: (DERBY-1326) Network server may abandon sessions when Derby system is shutdown and this causes intermittent hangs in the client
Date Mon, 12 Jun 2006 22:50:31 GMT
    [ http://issues.apache.org/jira/browse/DERBY-1326?page=comments#action_12415929 ] 

Deepa Remesh commented on DERBY-1326:
-------------------------------------

Thanks again for posting a detailed description. I read through the description and patch
"unify_NSImpl_instances.diff " quickly. 

I have few small comments/questions:

* Currently, the patch does the following "Modify the DRDAServerStarter boot code so that
it loads the embedded engine. " The description also mentions this: "an alternative would
be to load the embedded engine in NetworkServerControlImpl.start()". I like this alternative.
I am thinking of the scenario where derby.drda.startNetowrkServer property is set and we boot
embedded driver. In this scenario, if we load the embedded engine in the DRDAServerStarter
boot code, it will appear that we are trying to boot the embedded driver twice. However, this
will not do any harm as it will be a no-op. I think it would be better to avoid doing this
as it causes confusion why we are loading the driver again when we trace the path from loading
embedded engine.

* There is a slightly different code path when we start network server from the command line.
In this case, we create an instance of NetworkServerControlImpl and then call executeWork
which processes the "start" command by calling blockingStart(). There is no DRDAServerStarter
involved here as we do not need to launch another thread. This is not very relevant for the
current patch but just mentioning it in case we plan to re-organize the code. 

* It looks like the only purpose of calling DRDAServerStarter in NetworkServerControlImpl.start
method is to launch a separate thread. The javadoc comment for NetworkServerControlImpl.start
says:
	/**
	 * Start a network server.  Launches a separate thread with 
	 * DRDAServerStarter.  Want to use Monitor.startModule,
	 * so it can all get shutdown when cloudscape shuts down, but 
	 * can't get it working right now.

>From  current behaviour, we do not shutdown network server when we shutdown Derby. Does
anyone know if there is any plan to do as indicated by the comment: "Want to use Monitor.startModule,
so it can all get shutdown when cloudscape shuts down, but can't get it working right now."
? 

> Network server may abandon sessions when Derby system is shutdown and this causes intermittent
hangs in the client
> ------------------------------------------------------------------------------------------------------------------
>
>          Key: DERBY-1326
>          URL: http://issues.apache.org/jira/browse/DERBY-1326
>      Project: Derby
>         Type: Bug

>   Components: Network Server
>     Reporter: Deepa Remesh
>     Assignee: Bryan Pendleton
>  Attachments: repro1326.java, resolve_DRDConnThread_conflict.diff, sessionMgmt1.diff,
sessionMgmt1_and_nosessionsforclosedthreads.diff, unify_NSImpl_instances.diff, withNewThreadAndNoShutdownOfCurrentSession.diff
>
> This issue was found when working on DERBY-1219. More details can be found in the comments
at http://issues.apache.org/jira/browse/DERBY-1219

-- 
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