Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Fixed
-
2.0
-
None
Description
It's possible for a computer to be reserved even though the OS post_load tasks have not run. An example which would cause this:
-computer currentimageid is set to image being reloaded before reload is processed
-computer reload reservation is processed but fails before the OS post_load tasks run because rinstall or some other step times out
-computer is put into the failed stated
-vcld process exits
-rinstall for computer proceeds after vcld process exits
-post_load scripts run after computer with image boots
-ssh becomes responsive
Sometime later, the computer is put back into the available state. It gets assigned to a reservation for the image indicated by the computer's currentimageid. The vcld "new" process is started, detects the correct current image, and reserves the computer. The OS post_load tasks are never run.
This can be solved by adding a flag to the image after post_load runs and checking the flag before reserving the computer.