← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 20705: Reversed use of multipart uploads in JCloudsFileResourceContentStore. Seems to fail on files over...

 

------------------------------------------------------------
revno: 20705
committer: Halvdan Hoem Grelland <halvdanhg@xxxxxxxxx>
branch nick: dhis2
timestamp: Thu 2015-10-15 00:50:32 +0200
message:
  Reversed use of multipart uploads in JCloudsFileResourceContentStore. Seems to fail on files over a certain size (meaning more than one part?) on the MD5 integrity check at AWS S3 side. Needs more research to implement correctly, so turning it off for now. This does unfortunately have a meaningful performance hit on large uploads.
modified:
  dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/fileresource/FileResourceUploadCallbackProvider.java
  dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/fileresource/JCloudsFileResourceContentStore.java


--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk

Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/fileresource/FileResourceUploadCallbackProvider.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/fileresource/FileResourceUploadCallbackProvider.java	2015-10-13 22:07:31 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/fileresource/FileResourceUploadCallbackProvider.java	2015-10-14 22:50:32 +0000
@@ -54,8 +54,12 @@
                 log.error( "Saving file content failed", ex );
 
                 FileResource fetchedFileResource = idObjectManager.get( FileResource.class, fileResourceUid );
-                fetchedFileResource.setStorageStatus( FileResourceStorageStatus.FAILED );
-                idObjectManager.update( fetchedFileResource );
+
+                if ( fetchedFileResource != null )
+                {
+                    fetchedFileResource.setStorageStatus( FileResourceStorageStatus.FAILED );
+                    idObjectManager.update( fetchedFileResource );
+                }
             }
 
             @Override

=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/fileresource/JCloudsFileResourceContentStore.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/fileresource/JCloudsFileResourceContentStore.java	2015-10-14 14:28:05 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/fileresource/JCloudsFileResourceContentStore.java	2015-10-14 22:50:32 +0000
@@ -64,8 +64,6 @@
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
-import static org.jclouds.blobstore.options.PutOptions.Builder.multipart;
-
 /**
  * @author Halvdan Hoem Grelland
  */
@@ -330,7 +328,7 @@
 
         try
         {
-            etag = blobStore.putBlob( container, blob, multipart() );
+            etag = blobStore.putBlob( container, blob );
         }
         catch ( RuntimeException rte )
         {