Bug 810342

Summary: change Resource category of server Resources that should be services from SERVER to SERVICE
Product: [Other] RHQ Project Reporter: Ian Springer <ian.springer>
Component: PluginsAssignee: Charles Crouch <ccrouch>
Status: CLOSED CURRENTRELEASE QA Contact: Mike Foley <mfoley>
Severity: medium Docs Contact:
Priority: medium    
Version: 4.3CC: ccrouch, hbrock, hrupp
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugzilla.redhat.com/show_bug.cgi?id=818683
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-09-04 03:48:22 EDT Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On: 818643    
Bug Blocks:    

Description Ian Springer 2012-04-05 12:08:54 EDT
The traditional definition of the three Resource categories is:

* platform - a machine (may be physical or virtual)
* server - a process running on a machine
* service - some entity within a process

Over the years, we have made a handful of deviations from these
definitions, defining certain entities within processes as servers,
rather than services. Some examples are the "Embedded Tomcat Server"
type from the as4 plugin, and the "JBoss AS JVM" and other "xxx JVM"
types. IMO, these should all be switched over to services, so we are
consistently following the above definitions.

Besides the inconsistency in what it means to be a server, there's
something else about having all these non-top-level server types that
annoys me on a regular basis. When I go the Inventory > Servers, I want
to get a nice listing of all the server processes in my inventory.
Instead, that list is cluttered by various JVM's and embedded Tomcat
"servers", and there's no easy way to filter those out.

And one final point - we actually have added special code in a bunch of
places to handle "top-level" servers differently than other servers. For
example, we auto-import non-top-level servers just like services
(because they should *be* services!).

===

Here are the Resource types whose category should be changed from SERVER to SERVICE:

- AS7 plugin: all subsystem types (Stefan and Simeon are taking care of these)
- AS5 plugin: "JBoss AS JVM" type
- AS4 plugin: "Embedded Tomcat Server" and "JBoss AS JVM" types
- JBoss Cache plugin: "JBossCacheSubsystem" type
- Tomcat plugin: "Tomcat Server JVM" type
- RHQ Agent plugin: "RHQ Agent JVM" type
Comment 2 Ian Springer 2012-05-03 12:25:22 EDT
We have decided to back out the following server->service category changes:

- AS5 plugin: "JBoss AS JVM" type
- AS4 plugin: "Embedded Tomcat Server" and "JBoss AS JVM" types
- JBoss Cache plugin: "JBossCacheSubsystem" type
- Tomcat plugin: "Tomcat Server JVM" type
- RHQ Agent plugin: "RHQ Agent JVM" type

The reason is that there is a chance that users could have defined dynagroups, saved searches, or ResourceTypeCriteria used in CLI scripts or other remote RHQ clients, which filter based on resource category, e.g. for the group def:

resource.type.plugin = JBossAS5
resource.type.category = SERVER

the calculated dynagroup would have fewer members after changing the "JBoss AS JVM" type's category from SERVER to SERVICE. 

this example is contrived, and I can't think of any realistic examples, but it's impossible to guess what users might be doing.

I am reopening this BZ to track reverting these category changes.
Comment 3 Ian Springer 2012-05-03 13:59:19 EDT
The reversion of the category changes described in comment 2 is done in master:

http://git.fedorahosted.org/git/?p=rhq/rhq.git;a=commitdiff;h=4a7e3b6
Comment 4 Mike Foley 2012-05-08 15:33:28 EDT
per BZ triage ... crouch, loleary, foley
Comment 7 Heiko W. Rupp 2013-09-04 03:48:22 EDT
Bulk closing of some old issues