Common Scenarios When Exporting/Importing Azure Redis Cache
Published Aug 16 2022 11:09 PM 4,483 Views
Microsoft

Purpose

There are several reasons where users may fail to export / import Redis Cache data. To ease the troubleshooting process, this blog will follow the subsequent structure to introduce some possible causes and troubleshooting methods in detail.

  • Scenarios
  • Symptoms
  • Possible Reasons
  • Mitigation Methods

 

Possible causes when failed to export Redis Cache

Scenario 1: failed to export Redis Cache with “AuthorizationFailure” – (HTTP 403 at Redis Cache RP log)

Symptoms:

Error message: “The request to export data from cache ‘testexport’ failed with status ‘error’ and error ‘AuthorizationFailure: this request is not authorized to perform this operation’
Request ID: 05e9db08-301e-0068-3d64-a569cd000000
Time: 2022-08-01T05:09:34.7925950Z”. 

 

Ryan_Chen_0-1660709117334.png

 

Possible Reasons: target storage account has enabled firewall setting.

Mitigation Methods:

  • Option 1: disable storage firewall setting

  • Option 2: enable managed identity for existing Redis Cache: Enable Managed Identity . Choose either type of managed identity below to achieve the same goal (Note: managed identity functionality is only available in the Premium tier)

Scenario 2: conflict error when exporting Redis Cache – HTTP 409

Symptoms:

Error Message: "(Conflict) The resource '/subscription/xxx/resourceGroups/xxx/providers/Microsoft.Cache/Redis/testexport' is busy processing a previous update request or is undergoing system maintenance. As such, it is currently unable to accept the update request. Please try again later.
RequestID: 8e2a97e0-0c22-48c5-9e9a-b9554f61f83e"

Ryan_Chen_0-1660709537808.png

 

Possible Reasons: multiple requests were sent to the same Redis Cache concurrently. The previous export job has not completed either due to long running job needs more time or stuck in the backend for some reasons.

Mitigation Methods:

  • Option 1: retry after a while.
  • Option 2: If the previous request stuck for long time and retry does not resolve the issue, open a support ticket for further investigation.

 

Scenario 3: BlobTypeNotSupported: Page blob is not supported for this account type.

Symptom:

Error message: “The request to export data from cache 'textexport' failed with status error and error 'BlobTypeNotSupported: Page blob is not supported for this account type.
RequestID: cd355d17-701e-007c-58e7-a66d23000000
Time:2022-08-03T03:17:31.8342062Z'”. 

 

Ryan_Chen_1-1660709195123.png

 

Possible Reasons: exporting Redis Cache works only with RDB files stored as page blobs and target storage account does not support page bob - Supported blob type when export Redis.

Mitigation Methods: use premium page blob account or normal standard general-purpose V2 account.

 

Possible causes when failed to import Redis Cache

Scenario 1: The request is not authorized to perform this operation – HTTP 403

Symptom:

Usually the Authorization Failure during import process consists of IP authorization(from local machine to target storage account) and authorization error(from target storage account to Redis Cache).

  • Picture 1 - "The request is not authorized to perform this operation"

Ryan_Chen_0-1666066150919.png

 

 

  • Picture 2 - "The request to import data into cache 'testexport' failed with status 'error' and error"

Ryan_Chen_3-1660709273128.png

 

Possible Reasons: target storage account has enabled firewall setting.

Mitigation Methods:

  • Option 1: disable target storage account firewall setting.

  • Option 2: Alternatively, whitelist the IP address and make use of managed identity to import Redis.
    a. Go to Azure Portal and choose target storage account. From Networking panel, whitelist desired IP address.

Ryan_Chen_4-1660709331600.png

 

 

         b. Enable managed identity to import data when firewall setting is switched on (refer to the document for more details:  Enable Managed Identity

 

Scenario 2: conflict error when importing Redis Cache – HTTP 409

Symptoms:

Error Message: "(Conflict) The resource '/subscription/xxx/resourceGroups/xxx/providers/Microsoft.Cache/Redis/testexport' is busy processing a previous update request or is undergoing system maintenance. As such, it is currently unable to accept the update request. Please try again later.
RequestID: 9bda6421-f232-4a1d-8e03-02a17ee6659f"

Ryan_Chen_1-1660709589256.png

 

Possible Reasons: multiple requests were sent to the same Redis Cache concurrently. The previous import job has not completed either due to long running job needs more time or stuck in the backend for some reasons.

Mitigation Methods:

  • Option 1: retry after a while.
  • Option 2: If the previous request stuck for long time and retry does not resolve the issue, open a support ticket for further investigation.

 

Scenario 3: Fail to import due to not supported format error – HTTP 400

Symptoms:

Error Message: "One of the SAS URIs provided could not be used for the following reason: The data contained within the selected blob cannot be imported because it is not in a supported format. Please select a blob in the Redis RDB file format. As an example, a blob that was exported from a premium tier instance would be in the correct format 
RequestID=f3dec171-e48a-484d-a544-88c33909d466"  

Ryan_Chen_0-1666065143026.png

 

Possible Reasons: RDB/AOF persisted data files cannot be imported to a new cache.
Mitigation Methods:
As mentioned in official document , RDB/AOF persisted data files cannot be imported to a new cache. Therefore, to successfully move data across cache, you need to make use of export/import feature to first export the data file and then import the data file into new Redis Cache. For more details on this, please refer to the page .

 

Scenario 4: Fail to import due to incompatibility in Redis version

Symptoms:

Error Message: "The resource '/subscription/xxx/resourceGroups/xxx/providers/Microsoft.Cache/Redis/<cache name>' is busy processing a previous update request or is undergoing system maintenance. As such, it is currently unable to accept the update request. Please try again later.
RequestID: xxx"

 

Error A:

  • Import of OSS6 RDB to OSS4 is not supported
  • Import fails due to “Unknown RDB encoding type 248” because of the presence of Redis 6 data.
  • No proper error notification test is displayed to user.

Ryan_Chen_1-1666065698829.png

  • In case of Azure Powershell and az-cli, import fails with “status code: Conflict” and no Body.

Error B:

  • Import fails due to exported data being in .gz format from RE6.
  • Premium caches can't import the compressed .gz files
  • Proper error notification is displayed to user.

Ryan_Chen_2-1666065757095.png

 

  • In case of Azure Powershell and az-cli, import fails with “status code: Conflict” and no Body.

Error C:

  • To overcome the import issue with compressed .gz file by premium caches, we can manually unzip the rdb file and use it instead to import
  • This import of unzipped RE6 to OSS4 is not supported as OSS4 only supports till rdb version 8 , whereas RE6 exports with rdb version 9.

 

Information of Redis export/import compatibility

Redis export/import compatibility

  • OSS4 - Premium cache using redis 4.
  • OSS6 - Premium cache using redis 6.
  • RE6 - Redis Enterprise Cache (always uses Redis 6) . Export a compressed .gz file.
  • Unzipped RE6 - unzipped .gz rdb file from RE6.

Redis export/import compatibility supported scenarios

       
Source of RDB OSS4 OSS6 RE6
OSS4 Supported Supported Supported
OSS6 not supported (error A) Supported Supported
RE6 not supported (error B) not supported (error B) Supported
unzipped RE6 not supported (error C) Supported Supported
Co-Authors
Version history
Last update:
‎Oct 17 2022 09:09 PM
Updated by: