From 5b489cdc6e2113d11578de9b85531c0c1c6343ce Mon Sep 17 00:00:00 2001 From: davidjumani Date: Thu, 7 Jan 2021 10:20:40 +0530 Subject: [PATCH 1/4] uservmjoindaoimpl: Set free memory to zero if greater than total memory --- .../java/com/cloud/api/query/dao/UserVmJoinDaoImpl.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/server/src/main/java/com/cloud/api/query/dao/UserVmJoinDaoImpl.java b/server/src/main/java/com/cloud/api/query/dao/UserVmJoinDaoImpl.java index 8e489f89eca0..bbe75011bea8 100644 --- a/server/src/main/java/com/cloud/api/query/dao/UserVmJoinDaoImpl.java +++ b/server/src/main/java/com/cloud/api/query/dao/UserVmJoinDaoImpl.java @@ -222,8 +222,11 @@ public UserVmResponse newUserVmResponse(ResponseView view, String objectName, Us userVmResponse.setDiskKbsWrite((long)vmStats.getDiskWriteKBs()); userVmResponse.setDiskIORead((long)vmStats.getDiskReadIOs()); userVmResponse.setDiskIOWrite((long)vmStats.getDiskWriteIOs()); - userVmResponse.setMemoryKBs((long)vmStats.getMemoryKBs()); - userVmResponse.setMemoryIntFreeKBs((long)vmStats.getIntFreeMemoryKBs()); + long totalMemory = (long)vmStats.getMemoryKBs(); + long freeMemory = (long)vmStats.getIntFreeMemoryKBs(); + long correctedFreeMemory = freeMemory > totalMemory ? 0 : freeMemory; + userVmResponse.setMemoryKBs(totalMemory); + userVmResponse.setMemoryIntFreeKBs(correctedFreeMemory); userVmResponse.setMemoryTargetKBs((long)vmStats.getTargetMemoryKBs()); } From 9f12dd64c29b55ff7fb5d2ce128e78fed0ba8ca8 Mon Sep 17 00:00:00 2001 From: davidjumani Date: Mon, 22 Feb 2021 10:23:22 +0530 Subject: [PATCH 2/4] Updating api param description --- .../java/org/apache/cloudstack/api/response/UserVmResponse.java | 2 +- .../main/java/com/cloud/api/query/dao/UserVmJoinDaoImpl.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java b/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java index 44eaba7f313f..6d394fd7a399 100644 --- a/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java +++ b/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java @@ -209,7 +209,7 @@ public class UserVmResponse extends BaseResponseWithTagInformation implements Co private Long memoryKBs; @SerializedName("memoryintfreekbs") - @Param(description = "the internal memory thats free in vm") + @Param(description = "the internal memory thats free in vm or zero if it can not be calculated in the case of KVM") private Long memoryIntFreeKBs; @SerializedName("memorytargetkbs") diff --git a/server/src/main/java/com/cloud/api/query/dao/UserVmJoinDaoImpl.java b/server/src/main/java/com/cloud/api/query/dao/UserVmJoinDaoImpl.java index bbe75011bea8..1589f0151fe7 100644 --- a/server/src/main/java/com/cloud/api/query/dao/UserVmJoinDaoImpl.java +++ b/server/src/main/java/com/cloud/api/query/dao/UserVmJoinDaoImpl.java @@ -224,7 +224,7 @@ public UserVmResponse newUserVmResponse(ResponseView view, String objectName, Us userVmResponse.setDiskIOWrite((long)vmStats.getDiskWriteIOs()); long totalMemory = (long)vmStats.getMemoryKBs(); long freeMemory = (long)vmStats.getIntFreeMemoryKBs(); - long correctedFreeMemory = freeMemory > totalMemory ? 0 : freeMemory; + long correctedFreeMemory = freeMemory >= totalMemory ? 0 : freeMemory; userVmResponse.setMemoryKBs(totalMemory); userVmResponse.setMemoryIntFreeKBs(correctedFreeMemory); userVmResponse.setMemoryTargetKBs((long)vmStats.getTargetMemoryKBs()); From 6109894c940dbb8daaf03395a2efa6136043a172 Mon Sep 17 00:00:00 2001 From: davidjumani Date: Sat, 6 Mar 2021 11:45:13 +0530 Subject: [PATCH 3/4] Changing reponse param description Co-authored-by: dahn --- .../java/org/apache/cloudstack/api/response/UserVmResponse.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java b/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java index 6d394fd7a399..0652e438cb13 100644 --- a/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java +++ b/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java @@ -209,7 +209,7 @@ public class UserVmResponse extends BaseResponseWithTagInformation implements Co private Long memoryKBs; @SerializedName("memoryintfreekbs") - @Param(description = "the internal memory thats free in vm or zero if it can not be calculated in the case of KVM") + @Param(description = "the internal memory thats free in vm or zero if it can not be calculated") private Long memoryIntFreeKBs; @SerializedName("memorytargetkbs") From c74024b0aca1c123a96a0a901277a6ec189b4972 Mon Sep 17 00:00:00 2001 From: davidjumani Date: Wed, 10 Mar 2021 12:58:32 +0530 Subject: [PATCH 4/4] Fix typo Co-authored-by: dahn --- .../java/org/apache/cloudstack/api/response/UserVmResponse.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java b/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java index 0652e438cb13..ea5300e78752 100644 --- a/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java +++ b/api/src/main/java/org/apache/cloudstack/api/response/UserVmResponse.java @@ -209,7 +209,7 @@ public class UserVmResponse extends BaseResponseWithTagInformation implements Co private Long memoryKBs; @SerializedName("memoryintfreekbs") - @Param(description = "the internal memory thats free in vm or zero if it can not be calculated") + @Param(description = "the internal memory that's free in vm or zero if it can not be calculated") private Long memoryIntFreeKBs; @SerializedName("memorytargetkbs")