bug 11800: update DB for upgrade

This commit is contained in:
anthony 2011-11-07 14:50:02 -08:00
parent e9b21dad49
commit 1660ae3890
2 changed files with 19 additions and 19 deletions

View File

@ -2413,28 +2413,25 @@ public abstract class CitrixResourceBase implements ServerResource, HypervisorRe
return new MigrateAnswer(cmd, false, msg, null);
}
for (VM vm : vms) {
if (vm.getPVBootloader(conn).equals("pygrub") && !isPVInstalled(conn, vm)) {
// Only fake PV driver for PV kernel, the PV driver is installed, but XenServer doesn't think it is installed
String uuid = vm.getUuid(conn);
String result = callHostPlugin(conn, "vmops", "preparemigration", "uuid", uuid);
if (result == null || result.isEmpty()) {
return new MigrateAnswer(cmd, false, "migration failed due to preparemigration failed", null);
String uuid = vm.getUuid(conn);
String result = callHostPlugin(conn, "vmops", "preparemigration", "uuid", uuid);
if (result == null || result.isEmpty()) {
return new MigrateAnswer(cmd, false, "migration failed due to preparemigration failed", null);
}
// check if pv version is successfully set up
int i = 0;
for (; i < 20; i++) {
try {
Thread.sleep(1000);
} catch (final InterruptedException ex) {
}
// check if pv version is successfully set up
int i = 0;
for (; i < 20; i++) {
try {
Thread.sleep(1000);
} catch (final InterruptedException ex) {
}
if( isPVInstalled(conn, vm) ) {
break;
}
}
if (i >= 20) {
s_logger.warn("Can not fake PV driver for " + vmName);
if (isPVInstalled(conn, vm)) {
break;
}
}
if (i >= 20) {
s_logger.warn("Can not fake PV driver for " + vmName);
}
if( ! isPVInstalled(conn, vm) ) {
String msg = "Migration failed due to PV drivers is not installed for " + vmName;
s_logger.warn(msg);

View File

@ -0,0 +1,3 @@
update vm_instance set guest_os_id=98 where guest_os_id in (111, 113, 134, 121, 136) and hypervisor_type='XenServer'
update vm_instance set guest_os_id=99 where guest_os_id in (112, 114, 135, 126, 137) and hypervisor_type='XenServer'