Bug 817165

Summary: Child compatible group name displayed as ... in navigation tree after a group member's name is changed
Product: [JBoss] JBoss Operations Network Reporter: Larry O'Leary <loleary>
Component: UIAssignee: Jay Shaughnessy <jshaughn>
Status: CLOSED CURRENTRELEASE QA Contact: Mike Foley <mfoley>
Severity: medium Docs Contact:
Priority: urgent    
Version: JON 3.0.0CC: bkramer, jshaughn, loleary
Target Milestone: ---   
Target Release: JON 3.1.0   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 817185 (view as bug list) Environment:
Last Closed: 2013-09-11 11:04:55 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 817185    
Bug Blocks: 782579    
Attachments:
Description Flags
screenshot-01-auto-group-view-web-console.war.png
none
screenshot-02-web-console.war-expand-detail-panel.png
none
screenshot-03-web-console.war-detail-panel-edit-name.png
none
screenshot-04-web-console.war-detail-panel-renamed.png
none
screenshot-05-auto-group-view-noname.png
none
Screen-shot that shows the result of the testing none

Description Larry O'Leary 2012-04-27 21:44:09 UTC
Description of problem:
When a compatible resource of the same type and name is in a child or decedent compatible group (a logical grouping of the same resource as it exists across multiple parents) the group name is equal to the name of its children. For example:

/JBoss AS 5 Servers
 / Applications
   / Embedded Web Application (WAR)s
     / invoke.war
     / jbossws-management.war
     / web-console.war
       / Embedded Web Application Contexts

In this case, web-console.war is a compatible group containing all the web-console.war application resources deployed in all the parents of the group.

If the name of one of these resources in the group is changed, the result is the group name displayed in the navigation tree is "..."

/JBoss AS 5 Servers
 / Applications
   / Embedded Web Application (WAR)s
     / ...
       / Embedded Web Application Contexts
     / invoke.war
     / jbossws-management.war


In this case, the resource name of one of the web-console.war resources was changed to something else.

The problem with this is that now the navigation tree gives no indication what this is. If I repeat the rename for other WARs, I end up in a situation like this:


/JBoss AS 5 Servers
 / Applications
   / Embedded Web Application (WAR)s
     / ...
       / Embedded Web Application Contexts
     / ...
       / Embedded Web Application Contexts
     / ...
       / Embedded Web Application Contexts



Version-Release number of selected component (if applicable):
JON 3.0.0

How reproducible:
Always

Steps to Reproduce:
1.  Install two EAP 5 servers and start them both using a profile based on **default**

    -   The goal is to have two EAP servers in inventory of the same type and with the content
    
    1.  Copy <JBOSS_HOME>/server/default to <JBOSS_HOME>/server/server1 and <JBOSS_HOME>/server/server2
    2.  Start server1 as normal
    3.  Start server2 using -Djboss.service.binding.set=ports-01

2.  Install JON system and start it
3.  Import both EAP servers into inventory
4.  Create a recursive group containing all JBoss AS 5 servers from JON inventory

    1.  From **Inventory** select **Groups / All Groups**
    2.  Click **New** button
    3.  Set **Name** to `JBoss AS 5 Servers - Recursive`
    4.  Check **Recursive** check-box
    5.  Click **Next**
    6.  From **Category** drop-down, select **Server**
    7.  From **Type** drop-down, select **JBossAS5 Plugin -> JBossAS Server**
    8.  Move two or more EAP 5 resources from the left to the right **Assigned Resource** list
    9.  Click **Finish**

5.  Verify the new group **JBoss AS 5 Servers - Recursive** contains the child auto-group **Applications / Embedded Web Application (WAR)s / web-console.war**

    - See attached screen shot *screenshot-01-auto-group-view-web-console.war.png*

6.  From the **Inventory** page, select **Resources / Servers**
7.  Locate and select the EAP server resource which is using the *server2* configuration from the platform that was added to the *JBoss AS 5 Servers - Recursive* group
8.  From the left navigation tree, expand and select **<platform> -> JBossAS Servers (JBossAS5 plugin) -> EAP <host-name>:1199 server2 -> Applications -> Embedded Web Application (WAR)s -> web-console.war
9.  Expand the **web-console.war Embedded Web Application (WAR)** detail panel by clicking the icon to the left of the title

    -   See attached screen shot *screenshot-02-web-console.war-expand-detail-panel.png*

10. Hover over the **Name** field value until the edit icon appears (the pencil) and then click the edit icon

    -   See attached screen shot *screenshot-03-web-console.war-detail-panel-edit-name.png*

11. Change the name to something else

    -   For example, **web-console.war** to **RENAMED - web-console.war**

12. Click the check-mark icon to save the change

    -   You should see a success message *Name of Resource with id 10186 was changed from [web-console.war] to [RENAMED - web-console.war].*
    -   See attached screen shot *screenshot-04-web-console.war-detail-panel-renamed.png*

    **Observation** The left navigation panel still reflects the original name

13. From the **Inventory** page, select **Groups / All Groups**
14. Select the **JBoss AS 5 Servers - Recursive** group from the group list
15. From the left navigation tree, expand and select **JBoss AS 5 Servers - Recursive / Applications / Embedded Web Application (WAR)s / ...**

    -   See attached screen shot *screenshot-05-auto-group-view-noname.png*

    **Observation** Notice that the name displayed in the navigation tree is **...** instead of **web-console.war** as it was before
    **Observation** Notice that the name displayed at the top of the resource detail panel is **Group of Embedded Web Application (WAR) Compatible** instead of **web-console.war Compatible** 

  
Actual results:
Child compatible group name is displayed as "..." in navigation tree

Expected results:
Navigation tree should display actual group name as it appears in the resource group detail panel.

Additional info:

The reason this is happening is because the resource name is used as the auto-group name and the contents of the auto-group is determined by the resource key. In this case, the resource key for both web-console.war resources is **{default}console-mgr.sar/web-console.war**. So, even though their names could be different or changed, as long as their keys are the same (and their resource types are the same of course), they will be put into the same auto-group. The groups name is then determined based on the name of the resources that make it up. In the case that the resource names are different, the generic name **Group of Embedded Web Application (WAR)** is used. However, this name is not rendered in the navigation tree. 

At bare minimum, the expectation is that the actual auto-group's name should appear in the navigation tree. This would allow the auto-groups name to be changed and the change be reflected in the navigation tree. Additionally, the *...* is not an appropriate or meaningful name to appear in the navigation tree.

The expected behavior is definitely up for interpretation. For example, it could be easy to see how a user might want:

-   the two resources in the auto-group to be split apart into their own auto-groups

    - auto-group contents is based on name and key so that one could have a auto-group of **web-console.war - production** and **web-console.war - development*

- or to have the group's name remain what it was originally
- or to have the group'w name remain what it was originally with some kind of icon or symbol to denote that the actual resources contained within have varying names

Comment 1 Larry O'Leary 2012-04-27 21:45:22 UTC
Created attachment 580874 [details]
screenshot-01-auto-group-view-web-console.war.png

Comment 2 Larry O'Leary 2012-04-27 21:45:48 UTC
Created attachment 580875 [details]
screenshot-02-web-console.war-expand-detail-panel.png

Comment 3 Larry O'Leary 2012-04-27 21:46:14 UTC
Created attachment 580876 [details]
screenshot-03-web-console.war-detail-panel-edit-name.png

Comment 4 Larry O'Leary 2012-04-27 21:46:38 UTC
Created attachment 580877 [details]
screenshot-04-web-console.war-detail-panel-renamed.png

Comment 5 Larry O'Leary 2012-04-27 21:46:59 UTC
Created attachment 580878 [details]
screenshot-05-auto-group-view-noname.png

Comment 6 Larry O'Leary 2012-04-27 21:47:39 UTC
This issue is similar to Bug 734592.

Comment 7 Jay Shaughnessy 2012-05-09 19:32:29 UTC
The upstream has been fixed.

Comment 8 Charles Crouch 2012-05-14 21:01:31 UTC
Setting this back to ON_DEV since the change is only upstream in master, its not currently in release/jon3.1.x branch

Comment 11 Charles Crouch 2012-05-21 14:33:49 UTC
(9:30:20 AM) ccrouch: loleary: would GSS be able to test https://bugzilla.redhat.com/show_bug.cgi?id=817165 if we put it in the release/jon3.1.x branch?
(9:30:54 AM) loleary: ccrouch: To be picked up in an ER build?
(9:32:19 AM) ccrouch: loleary: yep
(9:32:28 AM) loleary: Yes.

Jay please merge this in from master to the release/jon3.1.x branch

Comment 12 Jay Shaughnessy 2012-05-21 15:37:35 UTC
Cherry-pick from master, commit:

  23accbce6f9a6cf629fa2de942b10ffe6e18e536

Comment 14 bkramer 2012-05-30 14:45:15 UTC
Tested with ER5 and this bug is fixed. The attached screen-shot (817165_5_final.png) shows the output in navigation tree after one of the group member's name was changed. From this screen-shot - the generic name "Group of [Embedded Web Application (WAR)]" is used in the left panel as expected.

Comment 15 bkramer 2012-05-30 14:47:31 UTC
Created attachment 587748 [details]
Screen-shot that shows the result of the testing