Failed to Move VM to Another Account
- Langage dominant
- Java
- Étoiles
- 3.1k
- Forks
- 1.4k
- Merge moyen
- 6 j 19 h
- PR mergées (30 j)
- 32
Description
### problem
Up on stopping an Instance and trying to move it to another account...
...it does not make clear what caused the failure.
Even as a Root Admin, there is no explanation of what prevented the move from happening.
By looking at the logs, the message is clear but it is followed by an unhandled exception.
Sanitized fragments of the logs:
```
2026-06-11 20:07:53,953 ERROR [o.a.c.a.c.a.v.AssignVMCmd] (qtp1404565079-58786:[ctx-e08ee8a2, ctx-7b35ebda]) (logid:46523a5c) Failed to move VM [4944]. com.cloud.exception.InvalidParameterValueException: Snapshots exist for volume [ROOT-4944]. Detach volume or remove snapshots for the volume before assigning VM to another user.
at com.cloud.vm.UserVmManagerImpl.validateIfVolumesHaveNoSnapshots(UserVmManagerImpl.java:7961)
at com.cloud.vm.UserVmManagerImpl.moveVmToUser(UserVmManagerImpl.java:7871)
```
```
2026-06-11 19:58:58,841 ERROR [o.a.c.a.c.a.v.AssignVMCmd] (qtp1404565079-58786:[ctx-b7b9a764, ctx-86b9f79a]) (logid:1096b7f6) Failed to move VM [4944]. com.cloud.exception.InvalidParameterValueException: Remove any Port Forwarding rules for VM [VM instance {"id":4944,"instanceName":"i-73-4944-VM","state":"Stopped","type":"User","uuid":"*"}] before assigning it to another user.
at com.cloud.vm.UserVmManagerImpl.validateIfVmHasNoRules(UserVmManagerImpl.java:7934)
at com.cloud.vm.UserVmManagerImpl.moveVmToUser(UserVmManagerImpl.java:7868)
```
### versions
ACS 4.22.0.1
### The steps to reproduce the bug
1.
2.
3.
...
### What to do about it?
_No response_
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par AssignVMCmd et UserVmManagerImpl, en particulier validateIfVolumesHaveNoSnapshots, validateIfVmHasNoRules et moveVmToUser ; examinez ensuite la pull request liée #13675. La tâche sera terminée lorsqu’elle fournira une explication claire destinée à l’utilisateur en cas d’échec du déplacement, au lieu de laisser apparaître une exception non gérée.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java
- Domaine
- backend, cloud
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 25/100