Description of problem:
When for whatever reason a template image copy is deleted on storage, but is still present in the rhev manager database, the template cannot be removed
Version-Release number of selected component (if applicable):
rhevm 3.4.1
How reproducible:
100%
Steps to Reproduce:
1 Create a template, with at least one disk image
2 Copy the disk image to a second storage domain
3 Remove the disk image from one of the storage domains, using vdsClient on the SPM
4 Try to create a vm from this template (fails)
5 Try to remove the template from the RHEV admin portal (fails)
Actual results:
Trying to remove the template fails.
Expected results:
Deleting a template should work
Additional info:
Relevant messages in engine.log:
2014-12-11 09:39:22,166 ERROR [org.ovirt.engine.core.vdsbroker.irsbroker.DeleteImageGroupVDSCommand] (org.ovirt.thread.pool-4-thread-46) [8beff1f] Command DeleteImageGroupVDSCommand( storagePoolId = 0ba59901-a905-44c8-a6d5-f67b9bb3daa1, ignoreFailoverLimit = false, storageDomainId = dda045f1-7080-4c64-b0c8-26f9031c36cd, imageGroupId = 94e2ac52-87bb-41e2-9655-565b5a65a891, postZeros = false, forceDelete = false) execution failed. Exception: IrsOperationFailedNoFailoverException: IRSGenericException: IRSErrorException: Image does not exist in domain: 'image=94e2ac52-87bb-41e2-9655-565b5a65a891, domain=dda045f1-7080-4c64-b0c8-26f9031c36cd'
2014-12-11 09:39:22,167 INFO [org.ovirt.engine.core.vdsbroker.irsbroker.DeleteImageGroupVDSCommand] (org.ovirt.thread.pool-4-thread-46) [8beff1f] FINISH, DeleteImageGroupVDSCommand, log id: 3f9c3572
2014-12-11 09:39:22,167 ERROR [org.ovirt.engine.core.bll.RemoveTemplateSnapshotCommand] (org.ovirt.thread.pool-4-thread-46) [8beff1f] Command org.ovirt.engine.core.bll.RemoveTemplateSnapshotCommand throw Vdc Bll exception. With error message VdcBLLException: org.ovirt.engine.core.vdsbroker.irsbroker.IrsOperationFailedNoFailoverException: IRSGenericException: IRSErrorException: Image does not exist in domain: 'image=94e2ac52-87bb-41e2-9655-565b5a65a891, domain=dda045f1-7080-4c64-b0c8-26f9031c36cd' (Failed with error ImageDoesNotExistInDomainError and code 268)
2014-12-11 09:39:22,579 ERROR [org.ovirt.engine.core.bll.RemoveTemplateSnapshotCommand] (org.ovirt.thread.pool-4-thread-46) [8beff1f] Transaction rolled-back for command: org.ovirt.engine.core.bll.RemoveTemplateSnapshotCommand.
Relevant messages in vdsm.log
Thread-105880::ERROR::2014-12-11 09:39:20,931::task::866::TaskManager.Task::(_setError) Task=`c1ec5206-5deb-4bd8-933b-6974ad1b7cc8`::Unexpected error
Traceback (most recent call last):
File "/usr/share/vdsm/storage/task.py", line 873, in _run
return fn(*args, **kargs)
File "/usr/share/vdsm/logUtils.py", line 45, in wrapper
res = f(*args, **kwargs)
File "/usr/share/vdsm/storage/hsm.py", line 1513, in deleteImage
raise se.ImageDoesNotExistInSD(imgUUID, sdUUID)
ImageDoesNotExistInSD: Image does not exist in domain: 'image=94e2ac52-87bb-41e2-9655-565b5a65a891, domain=dda045f1-7080-4c64-b0c8-26f9031c36cd'
Thread-105880::DEBUG::2014-12-11 09:39:20,934::task::885::TaskManager.Task::(_run) Task=`c1ec5206-5deb-4bd8-933b-6974ad1b7cc8`::Task._run: c1ec5206-5deb-4bd8-933b-6974ad1b7cc8 ('dda045f1-7080-4c64-b0c8-26f9031c36cd', '0ba59901-a905-44c8-a6d5-f67b9bb3daa1', '94e2ac52-87bb-41e2-9655-565b5a65a891', 'false', 'false') {} failed - stopping task
(In reply to Liron Aravot from comment #2)
> Allon, we should..but that wasn't implemented :-).
We're redoing this command as part of the SPM removal. Worth considering handling this BZ there.
Description of problem: When for whatever reason a template image copy is deleted on storage, but is still present in the rhev manager database, the template cannot be removed Version-Release number of selected component (if applicable): rhevm 3.4.1 How reproducible: 100% Steps to Reproduce: 1 Create a template, with at least one disk image 2 Copy the disk image to a second storage domain 3 Remove the disk image from one of the storage domains, using vdsClient on the SPM 4 Try to create a vm from this template (fails) 5 Try to remove the template from the RHEV admin portal (fails) Actual results: Trying to remove the template fails. Expected results: Deleting a template should work Additional info: Relevant messages in engine.log: 2014-12-11 09:39:22,166 ERROR [org.ovirt.engine.core.vdsbroker.irsbroker.DeleteImageGroupVDSCommand] (org.ovirt.thread.pool-4-thread-46) [8beff1f] Command DeleteImageGroupVDSCommand( storagePoolId = 0ba59901-a905-44c8-a6d5-f67b9bb3daa1, ignoreFailoverLimit = false, storageDomainId = dda045f1-7080-4c64-b0c8-26f9031c36cd, imageGroupId = 94e2ac52-87bb-41e2-9655-565b5a65a891, postZeros = false, forceDelete = false) execution failed. Exception: IrsOperationFailedNoFailoverException: IRSGenericException: IRSErrorException: Image does not exist in domain: 'image=94e2ac52-87bb-41e2-9655-565b5a65a891, domain=dda045f1-7080-4c64-b0c8-26f9031c36cd' 2014-12-11 09:39:22,167 INFO [org.ovirt.engine.core.vdsbroker.irsbroker.DeleteImageGroupVDSCommand] (org.ovirt.thread.pool-4-thread-46) [8beff1f] FINISH, DeleteImageGroupVDSCommand, log id: 3f9c3572 2014-12-11 09:39:22,167 ERROR [org.ovirt.engine.core.bll.RemoveTemplateSnapshotCommand] (org.ovirt.thread.pool-4-thread-46) [8beff1f] Command org.ovirt.engine.core.bll.RemoveTemplateSnapshotCommand throw Vdc Bll exception. With error message VdcBLLException: org.ovirt.engine.core.vdsbroker.irsbroker.IrsOperationFailedNoFailoverException: IRSGenericException: IRSErrorException: Image does not exist in domain: 'image=94e2ac52-87bb-41e2-9655-565b5a65a891, domain=dda045f1-7080-4c64-b0c8-26f9031c36cd' (Failed with error ImageDoesNotExistInDomainError and code 268) 2014-12-11 09:39:22,579 ERROR [org.ovirt.engine.core.bll.RemoveTemplateSnapshotCommand] (org.ovirt.thread.pool-4-thread-46) [8beff1f] Transaction rolled-back for command: org.ovirt.engine.core.bll.RemoveTemplateSnapshotCommand. Relevant messages in vdsm.log Thread-105880::ERROR::2014-12-11 09:39:20,931::task::866::TaskManager.Task::(_setError) Task=`c1ec5206-5deb-4bd8-933b-6974ad1b7cc8`::Unexpected error Traceback (most recent call last): File "/usr/share/vdsm/storage/task.py", line 873, in _run return fn(*args, **kargs) File "/usr/share/vdsm/logUtils.py", line 45, in wrapper res = f(*args, **kwargs) File "/usr/share/vdsm/storage/hsm.py", line 1513, in deleteImage raise se.ImageDoesNotExistInSD(imgUUID, sdUUID) ImageDoesNotExistInSD: Image does not exist in domain: 'image=94e2ac52-87bb-41e2-9655-565b5a65a891, domain=dda045f1-7080-4c64-b0c8-26f9031c36cd' Thread-105880::DEBUG::2014-12-11 09:39:20,934::task::885::TaskManager.Task::(_run) Task=`c1ec5206-5deb-4bd8-933b-6974ad1b7cc8`::Task._run: c1ec5206-5deb-4bd8-933b-6974ad1b7cc8 ('dda045f1-7080-4c64-b0c8-26f9031c36cd', '0ba59901-a905-44c8-a6d5-f67b9bb3daa1', '94e2ac52-87bb-41e2-9655-565b5a65a891', 'false', 'false') {} failed - stopping task