Verify repair fixes for scheduler
-change Agent and AgentTask to support a clear_queue_on_failure constructor para
m to AgentTasks. If True (default), behavior is as before. If False, the rest
of the queue will not be clear on task failure - failure tasks will be inserted
before the rest of the tasks.
-successful RepairTask sets host status to 'Repair Succeeded', not 'Ready', beca
use succesful repair is no guarantee the host is actually OK. We depend on a Re
verifyTask to follow the RepairTask and verify the machine is actually ready.
-added ReverifyTask and modified VerifyTask to support flowchart as posted at ht
tp://test.kernel.org/autotest/SchedulerSpecification.
-added SchedulerReverifyTask, and refactored all the verify stuff (including add
ing a SchedulerVerifyMixin) to cleanly support both synch and async verify and r
everify. This includes a fair bit of use of template methods.
-moved some logic from VerifyTask and VerifySynchronousTask out into HostQueueEn
try and Job, including figuring out the verify results dir and handling host ver
ify/repair failure (requeue a meta-host, fail a non-meta-host, stop other entrie
s for a synch job). This is cleaner with the increased complexity of verify/repa
ir.
-modified results moving code to just overwrite existing files/directories. It
prints a warning when it does this, but doesn't crash anymore. Phew.
-modified machines file logic to only write a .machines file for a multi-machine
async job, and write it on-the-fly as each host runs.
-made meta-host entries unblock hosts when releasing them - releasing only happe
ns when a host fails verify + repair, and in this case, we want to allow assigni
ng back to that host if it should get repaired later
-added DBObject.fetch() and DBObject.delete() to support host unblocking. Had t
o change how DBObject gets the table name, so that DBObject.fetch(), which must
be a class method, could access the table name.
-added timestamp to queue.log logging
-global statements are only necessary when writing globals
Signed-off-by: Steve Howard <showard@google.com>
git-svn-id: http://test.kernel.org/svn/autotest/trunk@1281 592f7852-d20e-0410-864c-8624ca9c26a4
1 file changed