From 4efd5a37d8489463f20a9865ba7211db0b31f4c5 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Mon, 21 Mar 2022 17:20:23 +0100 Subject: [FileTransfer] Log stack traces on error, some OOM handling Try smaller buffers for uploading on OOM errors. Log error reason instead of just sending to peer, and also print a stack trace if applicable. --- src/main/java/org/openslx/filetransfer/Transfer.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/main/java/org/openslx/filetransfer/Transfer.java') diff --git a/src/main/java/org/openslx/filetransfer/Transfer.java b/src/main/java/org/openslx/filetransfer/Transfer.java index c396d6e..933e63e 100644 --- a/src/main/java/org/openslx/filetransfer/Transfer.java +++ b/src/main/java/org/openslx/filetransfer/Transfer.java @@ -218,12 +218,18 @@ public abstract class Transfer * */ protected void close( String error, UploadStatusCallback callback, boolean sendToPeer ) + { + close( error, callback, sendToPeer, null ); + } + + protected void close( String error, UploadStatusCallback callback, boolean sendToPeer, Exception e ) { if ( error != null ) { if ( sendToPeer ) sendErrorCode( error ); if ( callback != null ) callback.uploadError( error ); + log.info( "Closing with error '" + error + "'", e ); } synchronized ( transferSocket ) { safeClose( dataFromServer, outStream, transferSocket ); @@ -232,7 +238,12 @@ public abstract class Transfer protected void close( String error ) { - close( error, null, false ); + close( error, null ); + } + + protected void close( String error, Exception e ) + { + close( error, null, false, e ); } public void cancel() -- cgit v1.2.3-55-g7522