[ 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