apache / apache/cloudstack

copySnapshot between zones fails with: Timeout waiting for response from storage host

Open
#13,900 2 comments 0 reactions 1 assignee Claimed by @harikrishna-patnala View on GitHub
component:secondary-storage component:vmware Severity:Major type:bug
Dominant language
Java
Stars
3.1k
Forks
1.4k
Avg merge
6d 19h
Merged PRs (30d)
32

Description

### Problem
`copySnapshot` between zones fails with:
`Timeout waiting for response from storage host`

The destination SSVM actually finishes the HTTP download (vmdk/nvram/ovf) in seconds.
Files are present on destination secondary storage, but the management server never
marks the copy as successful.

### Versions
4.22.1.0 (also present on current main)
Hypervisor: VMware
Reproduced 5+ times, always ~90s timeout.

### Root cause

`DownloadListener.getAccountIdForDataObject()` handles TEMPLATE and VOLUME only.
For SNAPSHOT it returns null, then:

```java
Long accountId = getAccountIdForDataObject();
Account account = _accountMgr.getAccount(accountId);
```

Copying a **template** between the same zones works.
### Steps to reproduce
1. VMware zone A + zone B, NFS secondary in both
2. Create a volume snapshot, wait until BackedUp
3. `copySnapshot` from zone A to zone B
4. Dest SSVM log: `Download Completion ... status=DOWNLOAD_FINISHED`
5. MS log: timeout after ~90s — UI: Failed to copy snapshot
### Expected
Snapshot Ready on destination image store, `snapshot_zone_ref` updated.
### Actual
Job failed. No `snapshot_store_ref` row on dest store. Orphan files may remain on dest NFS.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.