[ https://issues.apache.org/jira/browse/DERBY-4304?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mamta A. Satoor updated DERBY-4304: ----------------------------------- Attachment: DERBY4304_fixNPE_patch2_diff.txt I am attaching(DERBY4304_fixNPE_patch2_diff.txt) a simple fix to NPE problem. During one of the shutdown steps, DERBY-4306 was throwing a npe(we have fixed DERBY-4306 now) and the shutdown exception handling code was calling following method on that npe consolePropertyMessage("DRDA_UnexpectedException.S", exception.getMessage()); consoleExceptionPrintTrace(exception); but the call exception.getMessage() on npe was returning null and consolePropertyMessage is not written to handle null 2nd param for this call of consolePropertyMessage. But the work done by this particular type of consolePropertyMessage method is also done by the next call in the shutdown exception handling which is consoleExceptionPrintTrace. Because of this, I have replaced the consolePropertyMessage("DRDA_UnexpectedException.S", exception.getMessage()); call with consolePropertyMessage("DRDA_UnexpectedException.S", true); This change makes sure we do not run into npe when exception.getMessage() is null. I am not sure if we should enter a new jira entry to make consolePropertyMessage("DRDA_UnexpectedException.S", exception.getMessage()); handle a null 2nd param. i ran junit tests and then ran into intermittent upgrade test failures. i am running derbyall and as soon as they are finished, i will go ahead and checkin the patch. One last step remaining is may be write a new method which is a subset of consolePropertyMessage because consolePropertyMessage handles the exception printing and then goes ahead and throws the exception again. For our purposes in this jira entry, we do not want the exception to be thrown back. instead, we want to move on to the next step in server shutdown. > Network Server shutdown should handle exceptions and finish the server > shutdown completely > ------------------------------------------------------------------------------------------ > > Key: DERBY-4304 > URL: https://issues.apache.org/jira/browse/DERBY-4304 > Project: Derby > Issue Type: Improvement > Components: Network Server > Affects Versions: 10.6.0.0 > Reporter: Mamta A. Satoor > Assignee: Mamta A. Satoor > Attachments: DERBY4304_fixNPE_patch2_diff.txt, > DERBY4304_handleExceptions_patch1_diff.txt > > > While working on DERBY-4053, found that an exception from Connection.close > was not handled properly by the server shutdown code which caused a new > instance server startup to hang. Resolved the problem with Connection close > but in general, we should > 1) Make sure an exception during shutdown processing does not prevent the > remaining shutdown tasks, like closing the server socket from occurring. > 2) Make sure any exceptions that occur in shutdown processing are reported to > the console. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.