Troubleshooting blob storage

Abstract

Find the answer to common problems encountered with blob storage.

Use this troubleshooting reference to answer frequently asked questions about installing the Microsoft Azure® Blob Storage module and migrating blobs.

If you use SQL Database for blob storage, you can enable or disable blob-related methods with configuration files. You cannot do this with the Azure Storage provider. However, you can still customize Azure blob storage methods by overriding them.

The diagnostic console of the Azure App Service is Kudu, which uses a PowerShell console to run processes such as PowerShell scripts.

Kudo terminates any long-running scripts if there is no input or interaction with the PowerShell console after 60 minutes. This limitation means we recommend you to not choose Kudu to migrate a large volume of data. However, if you must use Kudu to migrate a large volume of data, then you might need to re-run the migration scripts several times. Refer to the Migration scripts performance table for more information about the time, capacity, and memory it takes to migrate blobs using different script environments.

You can share blobs between many different media items, which is why Sitecore does not delete media files (blobs) immediately after a media item is deleted. To delete the blobs from blob storage, run the Cleanup Database Admin wizard to invoke Blob Cleanup.

Blob Cleanup first scans all of the blobs in storage to identify blobs that are not being used by a media item, then it deletes all blobs that are not in use. The Blob Cleanup does not delete blobs in the Recycle Bin that are associated with media items.

For Azure Blob Storage, Sitecore supports file sizes that are less then 2GB. However, by default, the Sitecore configuration files limit file size to even less than that. If you want to work with larger file sizes (that are still less than 2GB), then you must update the following configuration files:

  • Web.Config

    Table 8. System.Web

    Class

    System.Web

    Parameter

    httpRuntime.maxRequestLength

    Description

    Set the value in KB.

    Example

    <httpRuntime targetFramework="4.7.1" maxRequestLength="1048576" ...


    Table 9. System.WebServer

    Class

    System.WebServer

    Parameter

    Security

    Parameter

    requestFiltering

    Description

    Set the value of the requestLimits.maxAllowedContentLength parameter in bytes.

    Example

    <requestLimits maxAllowedContentLength="1073741824" />


  • Sitecore.Config

    Table 10. Sitecore.Config

    Class

    Settings

    Parameter

    Media.MaxSizeInDatabase

    Description

    Set the value in MB.

    Example

    <setting name="Media.MaxSizeInDatabase" value="1024MB" />