apache / apache/cloudstack

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

オープン
#13,900 コメント 2 件 リアクション 0 件 担当者 1 名 @harikrishna-patnala が担当を希望しています GitHub で見る
component:secondary-storage component:vmware Severity:Major type:bug
主要言語
Java
スター
3.1k
フォーク
1.4k
平均マージ
6日 19時間
マージ済み PR(30日)
32

説明

### 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.

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。