Bug 1646319
Summary: | dashboard not working while storage domain has size less than 1GB | ||
---|---|---|---|
Product: | [oVirt] ovirt-engine | Reporter: | Petr Kubica <pkubica> |
Component: | Frontend.WebAdmin | Assignee: | rszwajko |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Pavel Novotny <pnovotny> |
Severity: | medium | Docs Contact: | |
Priority: | low | ||
Version: | --- | CC: | bugs, gshereme, michal.skrivanek, rszwajko, sgratch |
Target Milestone: | ovirt-4.4.0 | Flags: | pm-rhel:
ovirt-4.4+
sgratch: planning_ack? sgratch: devel_ack+ lleistne: testing_ack+ |
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | rhv-4.4.0-29 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2020-05-20 20:01:22 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | UX | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Petr Kubica
2018-11-05 11:58:04 UTC
should be a simple fix of storage.last24hours_average in frontend/webadmin/modules/frontend/src/main/resources/org/ovirt/engine/ui/frontend/server/dashboard/dao/StorageDomainDwhDAO.properties As for now the problem can be re-created in 2 scenarios: 1. dashboard using server cache 2. dashboard without server cache Ad 1 If server cache is used then dashboard is displayed but the storage utilization data is missing. On the server following exception is logged: 2020-03-06 13:32:51,942+01 ERROR [org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataServlet.CacheUpdate.Utilization] (EE-ManagedScheduledExecutorService-default-Thread-1) [] Could not update the Utilization Cache: Error while running SQL query: org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataException: Error while running SQL query at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.dao.BaseDao.runQuery(BaseDao.java:60) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.dao.StorageDomainDwhDao.getStorageDomainUtilization(StorageDomainDwhDao.java:92) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.UtilizationHelper.populateStorageUtilizationDomains(UtilizationHelper.java:96) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.UtilizationHelper.populateStorageUtilization(UtilizationHelper.java:89) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.HourlySummaryHelper.getStorageSummary(HourlySummaryHelper.java:73) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataServlet.lookupGlobalUtilization(DashboardDataServlet.java:367) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataServlet.getDashboard(DashboardDataServlet.java:339) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataServlet.populateUtilizationCache(DashboardDataServlet.java:302) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataServlet.access$000(DashboardDataServlet.java:31) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataServlet$1.run(DashboardDataServlet.java:114) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) at org.glassfish.javax.enterprise.concurrent//org.glassfish.enterprise.concurrent.internal.ManagedScheduledThreadPoolExecutor$ManagedScheduledFutureTask.access$201(ManagedScheduledThreadPoolExecutor.java:383) at org.glassfish.javax.enterprise.concurrent//org.glassfish.enterprise.concurrent.internal.ManagedScheduledThreadPoolExecutor$ManagedScheduledFutureTask.run(ManagedScheduledThreadPoolExecutor.java:534) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:834) at org.glassfish.javax.enterprise.concurrent//org.glassfish.enterprise.concurrent.ManagedThreadFactoryImpl$ManagedThread.run(ManagedThreadFactoryImpl.java:250) Caused by: org.postgresql.util.PSQLException: ERROR: division by zero Ad 2 Dashboard can retrieve data directly - this can be forced by setting "Prefer: nocache" property in the header (see DashboardDataProvider.fetchData() in ui-extensions). Then the dashboard fails to load and error message is displayed. On the server side following exception is logged: 2020-03-06 14:07:56,584+01 ERROR [org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataServlet] (default task-28) [] Unable to retrieve dashboard data: org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataException: Error whil e running SQL query at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.dao.BaseDao.runQuery(BaseDao.java:60) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.dao.StorageDomainDwhDao.getStorageDomainUtilization(StorageDomainDwhDao.java:92) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.UtilizationHelper.populateStorageUtilizationDomains(UtilizationHelper.java:96) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.UtilizationHelper.populateStorageUtilization(UtilizationHelper.java:89) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.HourlySummaryHelper.getStorageSummary(HourlySummaryHelper.java:73) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataServlet.lookupGlobalUtilization(DashboardDataServlet.java:367) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataServlet.getDashboard(DashboardDataServlet.java:339) at deployment.engine.ear.webadmin.war//org.ovirt.engine.ui.frontend.server.dashboard.DashboardDataServlet.doGet(DashboardDataServlet.java:259) at javax.servlet.api.0.Final//javax.servlet.http.HttpServlet.service(HttpServlet.java:503) .... Caused by: org.postgresql.util.PSQLException: ERROR: division by zero This bug is targeted to 4.4.2 and in modified state. can we re-target to 4.4.0 and move to QA? (In reply to Sandro Bonazzola from comment #3) > This bug is targeted to 4.4.2 and in modified state. can we re-target to > 4.4.0 and move to QA? yes, we can. Verified in ovirt-engine-4.4.0-0.31.master.el8ev.noarch ovirt-engine-webadmin-portal-4.4.0-0.31.master.el8ev.noarch Verification steps: 1. Add a data storage with size of 512 MB. 2. Wait few hours do DWH collects some storage usage samples. 3. Check the Webadmin Dashboard. Result: The Dashboard loads successfully and shows collected data about storage usage (it's basically 0.0 Available of 0 TiB / 0.0 TiB Used). This bugzilla is included in oVirt 4.4.0 release, published on May 20th 2020. Since the problem described in this bug report should be resolved in oVirt 4.4.0 release, it has been closed with a resolution of CURRENT RELEASE. If the solution does not work for you, please open a new bug report. |