OpenJDK / jdk / jdk
changeset 57131:60bdcb9a7b94
8232446: logging enhancement for rmi when socket closed
Reviewed-by: rriggs, plevart
author | mli |
---|---|
date | Thu, 28 Nov 2019 13:48:25 +0800 |
parents | 17d242844fc9 |
children | d67bb40f422c |
files | src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPConnection.java src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPTransport.java |
diffstat | 2 files changed, 36 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPConnection.java Wed Nov 27 16:01:34 2019 +0000 +++ b/src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPConnection.java Thu Nov 28 13:48:25 2019 +0800 @@ -209,7 +209,10 @@ * Close the connection. */ public void close() throws IOException { - TCPTransport.tcpLog.log(Log.BRIEF, "close connection"); + if (TCPTransport.tcpLog.isLoggable(Log.BRIEF)) { + TCPTransport.tcpLog.log(Log.BRIEF, + "close connection, socket: " + socket); + } if (socket != null) socket.close();
--- a/src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPTransport.java Wed Nov 27 16:01:34 2019 +0000 +++ b/src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPTransport.java Thu Nov 28 13:48:25 2019 +0800 @@ -273,12 +273,23 @@ private void decrementExportCount() { assert Thread.holdsLock(this); exportCount--; + if (tcpLog.isLoggable(Log.VERBOSE)) { + tcpLog.log(Log.VERBOSE, + "server socket: " + server + ", exportCount: " + exportCount); + } if (exportCount == 0 && getEndpoint().getListenPort() != 0) { ServerSocket ss = server; server = null; try { + if (tcpLog.isLoggable(Log.BRIEF)) { + tcpLog.log(Log.BRIEF, "server socket close: " + ss); + } ss.close(); } catch (IOException e) { + if (tcpLog.isLoggable(Log.BRIEF)) { + tcpLog.log(Log.BRIEF, + "server socket close throws: " + e); + } } } } @@ -366,6 +377,10 @@ executeAcceptLoop(); } finally { try { + if (tcpLog.isLoggable(Log.BRIEF)) { + tcpLog.log(Log.BRIEF, + "server socket close: " + serverSocket); + } /* * Only one accept loop is started per server * socket, so after no more connections will be @@ -374,6 +389,10 @@ */ serverSocket.close(); } catch (IOException e) { + if (tcpLog.isLoggable(Log.BRIEF)) { + tcpLog.log(Log.BRIEF, + "server socket close throws: " + e); + } } } } @@ -524,9 +543,15 @@ /** close socket and eat exception */ private static void closeSocket(Socket sock) { try { + if (tcpLog.isLoggable(Log.BRIEF)) { + tcpLog.log(Log.BRIEF, "socket close: " + sock); + } sock.close(); } catch (IOException ex) { // eat exception + if (tcpLog.isLoggable(Log.BRIEF)) { + tcpLog.log(Log.BRIEF, "socket close throws: " + ex); + } } } @@ -591,6 +616,9 @@ conn.close(); } catch (IOException ex) { // eat exception + if (tcpLog.isLoggable(Log.BRIEF)) { + tcpLog.log(Log.BRIEF, "Connection close throws " + ex); + } } } } @@ -723,6 +751,10 @@ // just close socket: this would recurse if we marshal an // exception to the client and the protocol at other end // doesn't match. + if (tcpLog.isLoggable(Log.BRIEF)) { + tcpLog.log(Log.BRIEF, "magic or version not match: " + + magic + ", " + version); + } closeSocket(socket); return; }