Bug 1752751

Summary: [RFE] Show vCPUs and allocated memory in virtual machines summary
Product: Red Hat Enterprise Virtualization Manager Reporter: Juan Orti <jortialc>
Component: ovirt-engineAssignee: rszwajko
Status: CLOSED ERRATA QA Contact: Ivana Saranova <isaranov>
Severity: low Docs Contact:
Priority: low    
Version: 4.3.5CC: emarcus, fgarciad, lwright, michal.skrivanek, pelauter, rszwajko, sgratch
Target Milestone: ovirt-4.4.3Keywords: FutureFeature
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: rhv-4.4.3-9 Doc Type: Enhancement
Doc Text:
This enhancement enables customization of the columns displayed in the Virtual Machines table of the Administration Portal. - Two new columns have been added to the Virtual Machines table - (number of) ‘vCPUs’, and ‘Memory (MB)’. These columns are not displayed by default. - A new pop-up menu has been added to the Virtual Machines table that allows you to reset the table column settings, and to add or remove columns from the display. - The selected column display settings (column visibility and order) are now persistent on the server by default, and are migrated (uploaded) to the server. This functionality can be disabled in the User > Options popup, by de-selecting the 'Persist grid settings' option.
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-11-24 13:09:18 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:
Attachments:
Description Flags
option to enable/disable server side persistence of grid settings
none
new columns: vCPUs and Memory
none
hiding a column via kebab button
none
reset grid settings via kebab button none

Description Juan Orti 2019-09-17 07:18:28 UTC
Description of problem:
This is a RFE for showing the amount of vCPUs and allocated memory in the virtual machines summary.

Currently, to view this information requires drilling down on the General information for each VM.

Version-Release number of selected component (if applicable):
ovirt-engine-4.3.5.5-0.1.el7.noarch

Comment 3 Laura Wright 2019-10-22 03:29:15 UTC
I think if we add anything else to the VM table we need to replace one of the current columns since there's already so much information surfaced.

Comment 4 Michal Skrivanek 2020-03-19 14:07:31 UTC
unfortunately we're out of time for 4.4

Comment 5 rszwajko 2020-10-06 10:35:16 UTC
As mentioned in comment 3 we did hit a limit of columns that we can display on Virtual Machine screen.
However we can add the requested columns as hidden and allow user to chose which columns should be displayed.
We already offer a possibility to hide/re-order grid columns but the settings were persisted only in the local storage.

Changes:
1. add requested columns as hidden-by-default
2. server side persistence of chosen grid settings (column hiding/re-ordering)
   a) feature enabled by default
   b) existing settings are migrated (uploaded) from local storage on first login
3. add option to disable server side persistence ( header -> Options -> Persist grid settings )
   a) disabling the feature removes grid settings on the server
   b) after disabling the grid can be used as before (local storage only)
4. allow user to reset grid settings back to default values.
   a) supported settings: column width, visibility and order
   b) UI changes: a kebab button on the right side of paging controls (top right grid corner) with actions:
    1. 'Change column visibility/order' - added for consistency. Offers an alternative way of showing
       column chooser pop-up
    2. 'Reset settings'
5. bug fixes(scenarios below): 
   a) persist grid columns hidden-by-default 
   b) remove HIDDEN_WIDTH feature
   c) get user info from DB instead of session 

Bug scenario 1:  persist grid columns hidden-by-default
     
    1. show a column hidden by default (i.e. K8s Namespace column on Compute -> Virtual Machines)
    2. log out and log in again
    3. check the column visibility
    Expected result: column is visible

Bug scenario 2: remove HIDDEN_WIDTH feature

    1. hide column A (let's assume it has width 120px).
    2. swap hidden column A with some visible column B.
    3. show hidden column A
    
    Expected result:
    column A is visible in the new place and has previous width (120px)
    
    Actual result:
    column A has width equal to 1px and cannot be resized.

Bug scenario 3: get user info from DB instead of session 

    1. verify that persisting grid settings feature is enabled
    2. hide column A
    3. reload the page

    Expected result: column A is hidden
    Actual result: column A is visible (user instance stored in the session has outdated user options)

Migration scenario 1: existing options

    1. verify that user has no options
       a) via REST API [1] 
       b) DB query: select user_id, name, options::text from users
    2. verify that local storage contains settings (among them some supported settings)
    3. log in to Ovirt engine with server side grid persistence
    4. verify that:
       a) supported settings were uploaded
       b) unsupported settings were not affected


[1] http://ovirt.github.io/ovirt-engine-api-model/4.4/#services/user/methods/get

Comment 6 rszwajko 2020-10-06 10:37:16 UTC
Created attachment 1719332 [details]
option to enable/disable server side persistence of grid settings

Comment 7 rszwajko 2020-10-06 10:38:33 UTC
Created attachment 1719333 [details]
new columns: vCPUs and Memory

Comment 8 rszwajko 2020-10-06 10:39:54 UTC
Created attachment 1719334 [details]
hiding a column via kebab button

Comment 9 rszwajko 2020-10-06 10:40:46 UTC
Created attachment 1719336 [details]
reset grid settings via kebab button

Comment 11 Ivana Saranova 2020-10-19 23:40:25 UTC
Steps:
1) Do all the scenarios as per Comment 5

Results:
All scenarios successfully end in the expected result. Columns are shown or hidden as requested and options are kept and settings are stored only on server and local storage.

Verified in:
ovirt-engine-4.4.3.7-0.22.el8ev.noarch

Comment 12 Eli Marcus 2020-11-22 19:18:34 UTC
Hi Radoslaw, 
please review the doc text for the errata and release notes: 

This enhancement enables customization of the columns displayed in theVirtual Machines table of the Administration Portal.
- Two new columns have been added to the Virtual Machines table - (number of) ‘vCPUs’, and ‘Memory (MB)’.
- A new pop-up menu has been added to the Virtual Machines table that allows you to reset the table column settings, and to add or remove columns from the display.
- The selected column display settings (column visibility and order) are now persistent on the server by default, and are migrated (uploaded) to the server. This functionality can be disabled in the User > Options popup, by de-selecting the 'Persist grid settings' option.

Comment 13 rszwajko 2020-11-23 08:19:03 UTC
> Two new columns have been added to the Virtual Machines table - (number of) ‘vCPUs’, and ‘Memory (MB)’.

Please add also information that both columns are hidden by default.
The rest looks good to me.

Comment 17 errata-xmlrpc 2020-11-24 13:09:18 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Low: Red Hat Virtualization security, bug fix, and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2020:5179