Martin Betak has posted comments on this change.
Change subject: engine: Incorrect VM TimeZone handling
......................................................................
Patch Set 5:
(5 comments)
....................................................
File
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RunVmCommand.java
Line 634: protected void handleMemoryAdjustments() {
Line 635: // nothing to do in RunVmCommand class
Line 636: }
Line 637:
Line 638: // set the timezone to use the engine default if trying to run VM
with incorrect TZ set
Done
Line 639: private void handleTimeZone() {
Line 640:
Line 641: if (!isVmTimeZoneValid(getVm())) {
Line 642: log.warnFormat("ResourceManager::{0}::Attempting to run
VM {1} with incorrect timezone '{2}'. Resetting timezone to engine default.",
Line 638: // set the timezone to use the engine default if trying to run VM
with incorrect TZ set
Line 639: private void handleTimeZone() {
Line 640:
Line 641: if (!isVmTimeZoneValid(getVm())) {
Line 642: log.warnFormat("ResourceManager::{0}::Attempting to run
VM {1} with incorrect timezone '{2}'. Resetting timezone to engine default.",
Done
Line 643: getClass().getName(),
Line 644: getVmId().toString(),
Line 645: getVm().getTimeZone());
Line 646: getVm().getStaticData().setTimeZone(null);
Line 645: getVm().getTimeZone());
Line 646: getVm().getStaticData().setTimeZone(null);
Line 647: // only persist corrected timezone if this wasn't a
Run-Once
Line 648: if (!getVm().isRunOnce()) {
Line 649: getVmStaticDAO().update(getVm().getStaticData());
While we already have an upgrade script which normalizes "" -> null, and will
be adding validation to all commands setting the timezone, we still are missing
handling of the case when user has older vm with invalid timezone that is
non-empty ('blalbah', or just as simple typo such as 'Europe/Beriln') set via
the REST API. Since we cannot fix such cases in db upgrade script, this is the
last line of defense for us to prevent running a vm with invalid TZ. If the
timezones had been validated from day 1, this of course would not be needed.
Line 650: }
Line 651: }
Line 652: }
Line 653:
....................................................
File
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
Line 214: ACTION_TYPE_FAILED_HOST_NOT_EXIST(ErrorType.BAD_PARAMETERS),
Line 215: ACTION_TYPE_FAILED_VM_SNAPSHOT_NOT_IN_PREVIEW(ErrorType.CONFLICT),
Line 216:
ACTION_TYPE_FAILED_SHAREABLE_DISK_NOT_SUPPORTED(ErrorType.CONFLICT),
Line 217: FAILED_TO_RUN_LDAP_QUERY(ErrorType.INTERNAL_ERROR),
Line 218: ACTION_TYPE_FAILED_INVALID_TIMEZONE,
Done
Line 219:
Line 220: VDS_CANNOT_REMOVE_DEFAULT_VDS_GROUP(ErrorType.CONFLICT),
Line 221: VDS_CANNOT_REMOVE_VDS_DETECTED_RUNNING_VM(ErrorType.CONFLICT),
Line 222: ACTION_TYPE_FAILED_DETECTED_PINNED_VMS(ErrorType.CONFLICT),
....................................................
File backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
Line 739: ROLE_TYPE_CANNOT_BE_EMPTY=Invalid Role Type.
Line 740: CANNOT_ADD_ACTION_GROUPS_TO_ROLE_TYPE=Cannot add administrator's
action group to a User Role.
Line 741: STORAGE_DOMAIN_NOT_ATTACHED_TO_STORAGE_POOL=Storage Domain is already
detached from the Data Center.
Line 742: VDS_APPROVE_VDS_NOT_FOUND=Cannot approve Host - Host does not exists.
Line 743: ACTION_TYPE_FAILED_INVALID_TIMEZONE="Invalid time zone for given VM
OS type."
Done
Line 744:
Line 745: # Quota messages.
Line 746: ACTION_TYPE_FAILED_QUOTA_NOT_EXIST=Cannot ${action} ${type}. Quota
doesn't exist.
Line 747: ACTION_TYPE_FAILED_QUOTA_IS_NOT_VALID=Cannot ${action} ${type}. Quota
is not valid.
--
To view, visit http://gerrit.ovirt.org/17524
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ifd36656bd4f0288e86b1cbd46d702fa68051e28b
Gerrit-PatchSet: 5
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Martin Betak <[email protected]>
Gerrit-Reviewer: Arik Hadas <[email protected]>
Gerrit-Reviewer: Martin Betak <[email protected]>
Gerrit-Reviewer: Michal Skrivanek <[email protected]>
Gerrit-Reviewer: Omer Frenkel <[email protected]>
Gerrit-Reviewer: Roy Golan <[email protected]>
Gerrit-Reviewer: Tomas Jelinek <[email protected]>
Gerrit-Reviewer: oVirt Jenkins CI Server
Gerrit-HasComments: Yes
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches