}
for (Map.Entry<Integer, ListenableFuture<String>> entry : futureParts.entrySet()) {
entry.getValue().cancel(false);
}
if (uploadId != null) {
client.abortMultipartUpload(container, key, uploadId);
}
throw rtex;
}
} else {
// Issue 936: don't just call putBlob, as that will see options=multiPart and