diff --git a/bubble-server/src/main/java/bubble/cloud/storage/StorageServiceDriverBase.java b/bubble-server/src/main/java/bubble/cloud/storage/StorageServiceDriverBase.java index b8eaec9e..fd31285d 100644 --- a/bubble-server/src/main/java/bubble/cloud/storage/StorageServiceDriverBase.java +++ b/bubble-server/src/main/java/bubble/cloud/storage/StorageServiceDriverBase.java @@ -60,10 +60,17 @@ public abstract class StorageServiceDriverBase extends CloudServiceDriverBase f = new File(temp, "spooled"); writeRequest = new WriteRequest(temp, f, requestId); requestMap.put(requestId, writeRequest); + long countBytes = 0; try (OutputStream out = new FileOutputStream(f)) { - IOUtils.copyLarge(data, out); - } catch (IOException e) { - return die("StorageServiceDriverBase._write: error: "+e); + countBytes = IOUtils.copyLarge(data, out); + } catch (IllegalStateException e) { + if (e.getMessage().contains("timeout")) { + if (countBytes == 0) { + return die("StorageServiceDriverBase._write: error: " + e); + } + } + } catch (Exception e) { + return die("StorageServiceDriverBase._write: error: " + e); } } } diff --git a/bubble-server/src/main/java/bubble/cloud/storage/local/LocalStorageDriver.java b/bubble-server/src/main/java/bubble/cloud/storage/local/LocalStorageDriver.java index eb6f7af0..6158426f 100644 --- a/bubble-server/src/main/java/bubble/cloud/storage/local/LocalStorageDriver.java +++ b/bubble-server/src/main/java/bubble/cloud/storage/local/LocalStorageDriver.java @@ -153,11 +153,17 @@ public class LocalStorageDriver extends CloudServiceDriverBase