microsoft / AzureStorageExplorer

Easily manage the contents of your storage account with Azure Storage Explorer. Upload, download, and manage blobs, files, queues, tables, and Cosmos DB entities. Gain easy access to manage your virtual machine disks. Work with either Azure Resource Manager or classic storage accounts, plus manage and configure cross-origin resource sharing (CORS) rules.
Creative Commons Attribution 4.0 International
372 stars 85 forks source link

Copying 8TB Disk Between Regions: InvalidVhd-Disk is expected to have cookie value 'conectix'. #7996

Closed donw-projecthosts closed 1 month ago

donw-projecthosts commented 3 months ago

Preflight Checklist

Storage Explorer Version

1.34.0

Regression From

1.32.1

Architecture

x64

Storage Explorer Build Number

20240522.1

Platform

All

OS Version

Windows 10

Bug Description

When attempting to copy an 8TB disk from US Gov Virginia to US Gov Texas, the transfer with version 1.34.0 almost immediate fails. Copying within the same region works with version 1.34.0. The same copy between regions works on version 1.32.1. Attempting to copy a smaller 512GB disk between regions works with version 1.34.0.

Steps to Reproduce

Launch Azure Storage Explorer 1.34.0. Copy an unattached 8TB Disk in the Azure Gov Virginia Region Paste the 8TB Disk into a Storage Account located in the Azure Gov Texas Region.

Actual Experience

The activities log has the error message: Failed to copy disk 'a2g1010pdb43-DBData1' in resource group '44010-Production' to disk 'a2g1010pdb43-DBData1' in resource group '44010TX-Production': Multiple errors. The full error message is listed in the Additional Context. I reproduced this error on two separate systems.

Expected Experience

No response

Additional Context

AzCopy failed to complete the transfer. Disk 'a2g1010pdb43-DBData1' in '44010TX-Production' was likely created. You may need to delete this disk before retrying this operation.

AzCopy error message: UnexpectedQuit

Storage Explorer was unable to revoke access to a disk. The disks involved in this operation may still be in an 'Active SAS' or 'Active Upload' state. You may need to return the disks to an 'Unattached' state before retrying this operation, or before performing new operations on the disks.

Service response: { "name": "RestError", "message": "{\r\n \"error\": {\r\n \"code\": \"InvalidVhd\",\r\n \"message\": \"The specified cookie value in VHD footer indicates that disk 'abcd' with blob https://md-impexp-j3szthx1mstl.blob.core.usgovcloudapi.net:8443/dqr3s1jhmnrw/abcd is not a supported VHD. Disk is expected to have cookie value 'conectix'.\"\r\n }\r\n}", "stack": "RestError: {\r\n \"error\": {\r\n \"code\": \"InvalidVhd\",\r\n \"message\": \"The specified cookie value in VHD footer indicates that disk 'abcd' with blob https://md-impexp-j3szthx1mstl.blob.core.usgovcloudapi.net:8443/dqr3s1jhmnrw/abcd is not a supported VHD. Disk is expected to have cookie value 'conectix'.\"\r\n }\r\n}\n at handleErrorResponse (C:\Program Files\Microsoft Azure Storage Explorer\resources\app\node_modules\@storage-explorer\managed-disks-extension\dist\src\JobHandlers\CopyDiskJobHandler.js:2:139363)\n at deserializeResponseBody (C:\Program Files\Microsoft Azure Storage Explorer\resources\app\node_modules\@storage-explorer\managed-disks-extension\dist\src\JobHandlers\CopyDiskJobHandler.js:2:140095)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)", "statusCode": 400, "request": { "url": "https://management.usgovcloudapi.net/subscriptions/*REDACTED*/resourceGroups/44010TX-Production/providers/Microsoft.Compute/disks/a2g1010pdb43-DBData1/endGetAccess?api-version=2022-07-02", "method": "POST", "headers": { "accept-encoding": "gzip,deflate", "user-agent": "Microsoft Azure Storage Explorer/1.34.0 (win32) azsdk-js-arm-compute/20.0.0 core-rest-pipeline/1.15.1 Node/20.9.0 OS/(x64-Windows_NT-10.0.19045)", "x-ms-client-request-id": "fb09f87e-df78-416f-a684-93973207e630", "authorization": "Bearer JSON Web Token Redacted" }, "timeout": 0, "withCredentials": false, "streamResponseStatusCodes": {}, "enableBrowserStreams": false, "disableKeepAlive": false, "requestId": "fb09f87e-df78-416f-a684-93973207e630", "allowInsecureConnection": true }, "response": { "request": { "url": "https://management.usgovcloudapi.net/subscriptions/*REDACTED*/resourceGroups/44010TX-Production/providers/Microsoft.Compute/disks/a2g1010pdb43-DBData1/endGetAccess?api-version=2022-07-02", "method": "POST", "headers": { "accept-encoding": "gzip,deflate", "user-agent": "Microsoft Azure Storage Explorer/1.34.0 (win32) azsdk-js-arm-compute/20.0.0 core-rest-pipeline/1.15.1 Node/20.9.0 OS/(x64-Windows_NT-10.0.19045)", "x-ms-client-request-id": "fb09f87e-df78-416f-a684-93973207e630", "authorization": "Bearer JSON Web Token Redacted" }, "timeout": 0, "withCredentials": false, "streamResponseStatusCodes": {}, "enableBrowserStreams": false, "disableKeepAlive": false, "requestId": "fb09f87e-df78-416f-a684-93973207e630", "allowInsecureConnection": true }, "status": 400, "headers": { "cache-control": "no-cache", "content-length": "302", "content-type": "application/json; charset=utf-8", "date": "Mon, 10 Jun 2024 20:36:43 GMT", "expires": "-1", "pragma": "no-cache", "server": "Microsoft-HTTPAPI/2.0, Microsoft-HTTPAPI/2.0", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-content-type-options": "nosniff", "x-ms-correlation-request-id": "0cea6f2c-17c4-43ca-bdd3-474b2740e47e", "x-ms-ratelimit-remaining-subscription-writes": "1198", "x-ms-request-id": "77aee188-1ba0-4456-9072-7206299b84ba", "x-ms-routing-request-id": "USDODEAST:20240610T203644Z:0cea6f2c-17c4-43ca-bdd3-474b2740e47e", "x-ms-served-by": "55307699-8450-42e8-bb6d-024cb7fbf299_133556074332653557" }, "bodyAsText": "{\r\n \"error\": {\r\n \"code\": \"InvalidVhd\",\r\n \"message\": \"The specified cookie value in VHD footer indicates that disk 'abcd' with blob https://md-impexp-j3szthx1mstl.blob.core.usgovcloudapi.net:8443/dqr3s1jhmnrw/abcd is not a supported VHD. Disk is expected to have cookie value 'conectix'.\"\r\n }\r\n}", "parsedBody": { "error": { "code": "InvalidVhd", "message": "The specified cookie value in VHD footer indicates that disk 'abcd' with blob https://md-impexp-j3szthx1mstl.blob.core.usgovcloudapi.net:8443/dqr3s1jhmnrw/abcd is not a supported VHD. Disk is expected to have cookie value 'conectix'." } } }, "details": { "body": { "error": { "code": "InvalidVhd", "message": "The specified cookie value in VHD footer indicates that disk 'abcd' with blob https://md-impexp-j3szthx1mstl.blob.core.usgovcloudapi.net:8443/dqr3s1jhmnrw/abcd is not a supported VHD. Disk is expected to have cookie value 'conectix'." } } } }

donw-projecthosts commented 3 months ago

I'm seeing exactly the same behavior in Azure Commercial attempting to copy an 8TB disk from North Central to South Central. A 4TB disk does work, however a 6TB disk (presumably >4TB) disk does not work.

AzCopy failed to complete the transfer. Disk 'Test8TB' in '46000sc' was likely created. You may need to delete this disk before retrying this operation.

AzCopy error message: UnexpectedQuit

Storage Explorer was unable to revoke access to a disk. The disks involved in this operation may still be in an 'Active SAS' or 'Active Upload' state. You may need to return the disks to an 'Unattached' state before retrying this operation, or before performing new operations on the disks.

Service response: { "name": "RestError", "message": "{\r\n \"error\": {\r\n \"code\": \"InvalidVhd\",\r\n \"message\": \"The specified cookie value in VHD footer indicates that disk 'abcd' with blob https://md-impexp-sbsxlsj155pf.z23.blob.storage.azure.net:8443/prtbmzbjrknt/abcd is not a supported VHD. Disk is expected to have cookie value 'conectix'.\"\r\n }\r\n}", "stack": "RestError: {\r\n \"error\": {\r\n \"code\": \"InvalidVhd\",\r\n \"message\": \"The specified cookie value in VHD footer indicates that disk 'abcd' with blob https://md-impexp-sbsxlsj155pf.z23.blob.storage.azure.net:8443/prtbmzbjrknt/abcd is not a supported VHD. Disk is expected to have cookie value 'conectix'.\"\r\n }\r\n}\n at handleErrorResponse (C:\Program Files\Microsoft Azure Storage Explorer\resources\app\node_modules\@storage-explorer\managed-disks-extension\dist\src\JobHandlers\CopyDiskJobHandler.js:2:139363)\n at deserializeResponseBody (C:\Program Files\Microsoft Azure Storage Explorer\resources\app\node_modules\@storage-explorer\managed-disks-extension\dist\src\JobHandlers\CopyDiskJobHandler.js:2:140095)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)", "statusCode": 400, "request": { "url": "https://management.azure.com/subscriptions/*REDACTED*/resourceGroups/46000sc/providers/Microsoft.Compute/disks/Test8TB/endGetAccess?api-version=2022-07-02", "method": "POST", "headers": { "accept-encoding": "gzip,deflate", "user-agent": "Microsoft Azure Storage Explorer/1.34.0 (win32) azsdk-js-arm-compute/20.0.0 core-rest-pipeline/1.15.1 Node/20.9.0 OS/(x64-Windows_NT-10.0.19045)", "x-ms-client-request-id": "e21f2739-2799-4e38-84f4-537c3fc60075", "authorization": "Bearer JSON Web Token Redacted" }, "timeout": 0, "withCredentials": false, "streamResponseStatusCodes": {}, "enableBrowserStreams": false, "disableKeepAlive": false, "requestId": "e21f2739-2799-4e38-84f4-537c3fc60075", "allowInsecureConnection": true }, "response": { "request": { "url": "https://management.azure.com/subscriptions/*REDACTED*/resourceGroups/46000sc/providers/Microsoft.Compute/disks/Test8TB/endGetAccess?api-version=2022-07-02", "method": "POST", "headers": { "accept-encoding": "gzip,deflate", "user-agent": "Microsoft Azure Storage Explorer/1.34.0 (win32) azsdk-js-arm-compute/20.0.0 core-rest-pipeline/1.15.1 Node/20.9.0 OS/(x64-Windows_NT-10.0.19045)", "x-ms-client-request-id": "e21f2739-2799-4e38-84f4-537c3fc60075", "authorization": "Bearer JSON Web Token Redacted" }, "timeout": 0, "withCredentials": false, "streamResponseStatusCodes": {}, "enableBrowserStreams": false, "disableKeepAlive": false, "requestId": "e21f2739-2799-4e38-84f4-537c3fc60075", "allowInsecureConnection": true }, "status": 400, "headers": { "cache-control": "no-cache", "content-length": "301", "content-type": "application/json; charset=utf-8", "date": "Tue, 11 Jun 2024 17:42:24 GMT", "expires": "-1", "pragma": "no-cache", "strict-transport-security": "max-age=31536000; includeSubDomains", "x-cache": "CONFIG_NOCACHE", "x-content-type-options": "nosniff", "x-ms-correlation-request-id": "7fbbfb7a-e19c-4fac-a90e-c012b0dd57b2", "x-ms-ratelimit-remaining-subscription-global-writes": "2999", "x-ms-ratelimit-remaining-subscription-writes": "199", "x-ms-request-id": "9088a406-4666-43e4-a620-c4fa02ad5cc7", "x-ms-routing-request-id": "EASTUS:20240611T174225Z:7fbbfb7a-e19c-4fac-a90e-c012b0dd57b2", "x-ms-served-by": "80b4be35-3504-41e8-a144-75d8910047c3_133461168877013486", "x-msedge-ref": "Ref A: FD10C5685494457D893A3DBBC6BA3BD8 Ref B: MNZ221060609039 Ref C: 2024-06-11T17:42:24Z" }, "bodyAsText": "{\r\n \"error\": {\r\n \"code\": \"InvalidVhd\",\r\n \"message\": \"The specified cookie value in VHD footer indicates that disk 'abcd' with blob https://md-impexp-sbsxlsj155pf.z23.blob.storage.azure.net:8443/prtbmzbjrknt/abcd is not a supported VHD. Disk is expected to have cookie value 'conectix'.\"\r\n }\r\n}", "parsedBody": { "error": { "code": "InvalidVhd", "message": "The specified cookie value in VHD footer indicates that disk 'abcd' with blob https://md-impexp-sbsxlsj155pf.z23.blob.storage.azure.net:8443/prtbmzbjrknt/abcd is not a supported VHD. Disk is expected to have cookie value 'conectix'." } } }, "details": { "body": { "error": { "code": "InvalidVhd", "message": "The specified cookie value in VHD footer indicates that disk 'abcd' with blob https://md-impexp-sbsxlsj155pf.z23.blob.storage.azure.net:8443/prtbmzbjrknt/abcd is not a supported VHD. Disk is expected to have cookie value 'conectix'." } } } }

craxal commented 3 months ago

@donw-projecthosts For some reason, AzCopy is failing to transfer the blob. Can you reproduce the issue then share your AzCopy logs here? You can find the logs in your home directory under .azcopy (see also https://learn.microsoft.com/en-us/troubleshoot/azure/azure-storage/blobs/alerts/storage-explorer-troubleshooting?tabs=Windows#azcopy-logs).

donw-projecthosts commented 3 months ago

@craxal I've attached the logs of a bad 8TB cross region copy using version 1.34.0 and a good cross region copy using version 1.32.1. The repeating portions of the good logs are trimmed to keep the log size small.

8TB Cross Region Transfer-Bad v1.34.0.zip 8TB Cross Region Transfer-Good v1.32.1.zip

craxal commented 3 months ago

There's a significant gap in the dates between your 1.34.0 run and 1.32.1 run. Can you try the operations again to be absolutely sure there's a difference between versions?

Based on your logs, it seems that the request to get access to the source disk is what's failing. A shared access policy-based SAS is being used for authentication (which means I can't tell what permissions it has or what time range the SAS is valid). You might want to check the shared access policy to make sure it's still valid.

If none of that gets anywhere, have you tried taking the AzCopy command that Storage Explorer generates and running it in AzCopy directly?

craxal commented 1 month ago

Closing due to inactivity. If this is still a problem, please respond with additional details as requested, and we can review.