Uploaded image for project: 'Service Packs and Hot Fixes'
  1. Service Packs and Hot Fixes
  2. MNT-20770

Share non responsive during direct download from S3 if content store selector is also configured


    • Bug Priority:
      Category 1
    • ACT Numbers:


    • Sprint:
      Repo 67, Repo 68
    • Story Points:
    • Epic Link:
    • Delivery Team:
      Feature Teams



      When Alfresco S3 Connector and Content Store Selector are both configured in Alfresco Content Services, performing a download of content contained in the S3 content store bucket, via Share, causes Share to become unresponsive for all users of the system for the duration of the download.

      Supporting Evidence


      ACS must have two content stores defined using Content Store Selector:

      • The default store should be local and use fileContentStore bean
      • The second store should be in an AWS S3 bucket and use s3ContentStoreStack bean

      ACS must use Oracle 12c with either ojdbc7.jar or ojdbc8.jar.

      ACS Content Cache must not contain the file being downloaded, this must be pulled directly from an S3 bucket.

      Before preforming the below Steps to Reproduce, create or locate a file of around 2GB in size, this will be referred to as testFile.iso in the below steps.

      In addition, while the size of the file does not effect the reproduction of this issue, a larger file increases the time taken to complete the download from S3. This increase in time period is used to highlight the duration of unresponsive behaviour from Share.

      Steps to Reproduce

      The following step must be preform to configure ACS to use S3 and Content Store Selector:

      1. Install ACS 5.2.5 and configure the database to use an Oracle 12c database
      2. Start ACS and verify functionality by preforming the following:
        1. Create a site called 'Test'
        2. Create a folder within Test, called Documents
        3. Upload any document to Documents
      3. Stop ACS
      4. Configure Content Store Selector by copying the attached file custom-content-store-context.xml in the following location: 
      1.  Configure the share so the aspect cm:storeSelector is visible by adding the following aspect to the list of visible aspects in share-config-custom.xml: 
        <aspect name="cm:storeSelector" />
      1. Apply the S3 Connector amp to the alfresco.war
      2. Configure the S3 Connector Bucket properties in alfresco-global.properties
      3. In alfresco-global.properties, override the following property: 

        ACS will not be bootstrap if dir.contentstore is not overridden. This is because ACS was first bootstrapped using a local file path. Once the S3 amp is applied, dir.contentstore will be configured to use a cloud bucket location, which will not contain the require files for a successful bootstrap.

      1. Start ACS

      The following steps demonstrate how to generate the issue

      1. Upload a large file to ACS, for example the testFile.iso mention above
      2. Apply the cm:storeSelector aspect to testFile.iso
      3. Change the value of cm:storeSelector for testFile.iso to "S3 Content Store"
      4. ACS will now copy testFile.iso to S3, wait for this to complete
      5. Delete the contents of contentcache to force the S3 Connector to download the file from the configured S3 bucket
      6. Download testFile.iso using Share
      7. While testFile.iso is downloading, open any link from the Share header bar, or try and open a new browser to any Share URL

      Expected Behaviour

      During the download of testFile.iso from S3, Share should continue to function.

      Observed Behaviour

      During the download of testFile.iso from S3, Share and repository services (such as rest apis, webscript, etc..) is unresponsive for all users. Share only become responsive once the download of testFile.iso is completed.



          Issue Links




                • Assignee:
                  closedbugs Closed Bugs (Inactive)
                  sreehall Sandeep Reehall
                • Votes:
                  1 Vote for this issue
                  10 Start watching this issue


                  • Created:

                    Structure Helper Panel