Bug 1181704

Summary: Remove place-holders from hibernate command
Product: Red Hat Enterprise Virtualization Manager Reporter: Arik <ahadas>
Component: ovirt-engineAssignee: Ravi Nori <rnori>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 3.6.0CC: ecohen, gklein, iheim, lpeer, lsurette, michal.skrivanek, oourfali, rbalakri, Rhev-m-bugs, yeylon
Target Milestone: ---Keywords: CodeChange
Target Release: 3.6.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: infra
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-04-21 14:25:47 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Infra RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1150239    

Description Arik 2015-01-13 15:54:46 UTC
Description of problem:
The place-holders mechanism was added to the hibernate command as a proof of concept. The problem is that this mechanism is wrong: the criteria whether the command can be safely ended as successful after engine restart (once all the tasks are finished successfully) should not be when the number of tasks matches the expected number of tasks. It should be: only when the execute phase ends successfully (just like regular, i.e not engine restart, flow - we poll the tasks after the execute phase is finished).

We are about to change the hibernate command to call add-disk instead of create-image, so we need to remove the place-holders from it. without an alternative we'll suffer from the bug that lead us to the place-holders solution.

I can think of 2 options:

1. to mark tasks which are created as part of hibernate command as tasks that should be ignored after engine restart - it's a nice technical challenge to resume the operation after engine restart, but I'm not sure it is very useful, we can live with failed hibernate commands after engine restart.

2. to mark the tasks as such that should be polled after engine restart only when the execute phase ends successfully.

I recommend on the #1.