Allon Mureinik has posted comments on this change.
Change subject: core: [WIP] extract general code from HibernateVmCommand
......................................................................
Patch Set 7: (3 inline comments)
....................................................
File
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmHandler.java
Line 528: * or null if no such storage domain exists in the pool
Line 529: */
Line 530: public static StorageDomain findStorageDomainForMemory(Guid
storagePoolId, long sizeRequested) {
Line 531: List<StorageDomain> domainsInPool =
DbFacade.getInstance().getStorageDomainDao().getAllForStoragePool(storagePoolId);
Line 532: if (domainsInPool.size() > 0) {
The if is redundant - if the list is empty, the for will just do nothing. No
need to protect against it.
I noted this in the previous patchset too.
It's OK to disagree, but please explain why, so that we can see your reasoning
and not just assume that you missed/ignored the comment.
Also, providing an explanation can give me the opportunity to also learn
something
Line 533: for (StorageDomain currDomain : domainsInPool) {
Line 534: if
((currDomain.getStorageDomainType().equals(StorageDomainType.Master)
Line 535: ||
currDomain.getStorageDomainType().equals(StorageDomainType.Data))
Line 536: && currDomain.getStatus() ==
StorageDomainStatus.Active
Line 531: List<StorageDomain> domainsInPool =
DbFacade.getInstance().getStorageDomainDao().getAllForStoragePool(storagePoolId);
Line 532: if (domainsInPool.size() > 0) {
Line 533: for (StorageDomain currDomain : domainsInPool) {
Line 534: if
((currDomain.getStorageDomainType().equals(StorageDomainType.Master)
Line 535: ||
currDomain.getStorageDomainType().equals(StorageDomainType.Data))
Use currDomain.getStorageDoaminType().isData() - it covers both Data and Master
domains
Line 536: && currDomain.getStatus() ==
StorageDomainStatus.Active
Line 537: &&
doesStorageDomainhaveSpaceForRequest(currDomain, sizeRequested)) {
Line 538: return currDomain;
Line 539: }
....................................................
File
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/VM.java
Line 1458: * @return - Memory size for allocation in bytes.
Line 1459: */
Line 1460: @JsonIgnore
Line 1461: public long getTotalMemorySizeInBytes() {
Line 1462: return (long) (getVmMemSizeMb() + 200 + (64 *
getNumOfMonitors())) * 1024 * 1024;
Might be a good idea to explain this calculation.
Also, note that you have an overflow issue here. int+int and int*int return int
- so if it overflows, you'll lose data, and the fact that you promote it to
long afterwards cannot help you. Just define all your literals as Long literals
and you should be OK.
Line 1463: }
Line 1464:
Line 1465: ///////////////////////////////////////////////
Line 1466: /// Utility methods that check the VM state ///
--
To view, visit http://gerrit.ovirt.org/14290
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I15c4f3302d26eb5d161824f8bb19ecc5dd114a20
Gerrit-PatchSet: 7
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Arik Hadas <[email protected]>
Gerrit-Reviewer: Allon Mureinik <[email protected]>
Gerrit-Reviewer: Arik Hadas <[email protected]>
Gerrit-Reviewer: Liron Ar <[email protected]>
Gerrit-Reviewer: Maor Lipchuk <[email protected]>
Gerrit-Reviewer: Omer Frenkel <[email protected]>
Gerrit-Reviewer: Roy Golan <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches