Issue Details (XML | Word | Printable)

Key: DERBY-3704
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Minor Minor
Assignee: Kathey Marsden
Reporter: Kathey Marsden
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Derby

If an IOException is encountered during establishment of the connection, Network Server should print the root exception to the console instead of a generic message

Created: 03/Jun/08 04:29 PM   Updated: 04/May/09 06:23 PM
Return to search
Component/s: Network Server
Affects Version/s: 10.5.1.1
Fix Version/s: 10.4.2.0, 10.5.1.1

Time Tracking:
Not Specified

File Attachments:
  Size
Text File Licensed for inclusion in ASF works derby-3704_diff.txt 2008-06-03 05:20 PM Kathey Marsden 1 kB

Issue & fix info: Patch Available
Resolution Date: 11/Jun/08 03:44 PM


 Description  « Hide
In working on DERBY-3701, I noticed that when the FileNotFound exception caused the connection to fail it just printed out a generic exception, not the IOException that caused the error.

That is because of this code in ClientThread.
 catch (IOException ioe) {
                    // IOException causes this thread to stop. No
                    // console error message if this was caused by a
                    // shutdown
                    synchronized (parent.getShutdownSync()) {
                        if (!parent.getShutdown()) {
                            parent.consolePropertyMessage("DRDA_UnableToAccept.S");
                        }
                    }

In the event of an unexpected IOException the actual exception should print and the client socket should be closed if it has been established.


 All   Comments   Work Log   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Kathey Marsden added a comment - 03/Jun/08 05:20 PM
Attached is a patch for this issue. I ran the repro for DERBY-3701 to test and verified that the FileNotFoundException printed to the console and the client socket was closed, but that is not a valid long term test because the problem will no longer occur once DERBY-3701 is fixed.