Bug 535671 (RHQ-2342)

Summary: Changing a dynagroup def from compat -> mixed, does not delete existing Group Alerts on the resulting group
Product: [Other] RHQ Project Reporter: Jeff Weiss <jweiss>
Component: AlertsAssignee: Joseph Marques <jmarques>
Status: CLOSED CURRENTRELEASE QA Contact: Corey Welton <cwelton>
Severity: medium Docs Contact:
Priority: medium    
Version: 1.3preCC: cwelton, dajohnso, jmarques
Target Milestone: ---Keywords: SubBug
Target Release: ---   
Hardware: All   
OS: All   
URL: http://jira.rhq-project.org/browse/RHQ-2342
Whiteboard:
Fixed In Version: 2.4 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
rev4856
Last Closed: 2010-08-12 16:44:13 UTC Type: ---
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: 608898    
Bug Blocks: 534621, 565635    

Description Jeff Weiss 2009-08-12 18:46:00 UTC
Create a dynagroup, with a def that creates a compatible group like this:

resource.type.plugin = JBossAS
resource.type.name = JBossAS Server

Now create a group alert on the resulting compatible group.  Now change the dynagroup's definition to this:

resource.type.name.contains = VM

The resulting group becomes mixed.  There will no longer even be an alerts tab.  But the alert you created is still there, you can see it in the Alert Def Subsystem view.  Clicking the link to the alert gives NPE:

java.lang.NullPointerException at org.rhq.enterprise.gui.legacy.action.resource.common.monitor.alerts.config.PortalAction.setTitle(PortalAction.java:114) at org.rhq.enterprise.gui.legacy.action.resource.common.monitor.alerts.config.PortalAction.viewDefinitionRoles(PortalAction.java:219) at sun.reflect.GeneratedMethodAccessor3930.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:270) at org.rhq.enterprise.gui.legacy.action.BaseDispatchAction.execute(BaseDispatchAction.java:82) at org.rhq.enterprise.gui.legacy.action.BaseRequestProcessor.processActionPerform(BaseRequestProcessor.java:46) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654) at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:557) at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:481) at org.apache.struts.tiles.UrlController.execute(UrlController.java:89) at org.apache.struts.tiles.TilesRequestProcessor.processTilesDefinition(TilesRequestProcessor.java:219) at org.apache.struts.tiles.TilesRequestProcessor.internalModuleRelativeForward(TilesRequestProcessor.java:341) at org.apache.struts.action.RequestProcessor.processForward(RequestProcessor.java:572) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:221) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414) at javax.servlet.http.HttpServlet.service(HttpServlet.java:690) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.rhq.enterprise.gui.legacy.WebUserTrackingFilter.doFilter(WebUserTrackingFilter.java:47) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.rhq.enterprise.gui.legacy.AuthenticationFilter.doFilter(AuthenticationFilter.java:129) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.rhq.helpers.rtfilter.filter.RtFilter.doFilter(RtFilter.java:124) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446) at java.lang.Thread.run(Thread.java:619) 

Comment 1 Red Hat Bugzilla 2009-11-10 21:02:34 UTC
This bug was previously known as http://jira.rhq-project.org/browse/RHQ-2342


Comment 2 wes hayutin 2010-02-16 16:51:31 UTC
Temporarily adding the keyword "SubBug" so we can be sure we have accounted for all the bugs.

keyword:
new = Tracking + FutureFeature + SubBug

Comment 3 wes hayutin 2010-02-16 16:57:47 UTC
making sure we're not missing any bugs in rhq_triage

Comment 4 wes hayutin 2010-02-17 13:36:02 UTC
moving any remaining Alert related bugs to rhq_chainsaw

Comment 5 wes hayutin 2010-02-18 14:49:32 UTC
This bug has now been triaged by Chainsaw on 2/18. The expectation is the bug to be addressed by the end of sprint06 roughly 3/10/10.

Comment 6 Joseph Marques 2010-06-27 04:39:28 UTC
commit eb5d619298ef5aa1d38c10cf308cca8e119403d3
Author: Joseph Marques <joseph>
Date:   Fri Jun 25 15:07:25 2010 -0400

    BZ-535671: remove compatible group constructs if dynagroup recalculation converts compat->mixed

Comment 7 Corey Welton 2010-06-29 15:09:28 UTC
Testing of this bug blocked by new bug 608898 -- it is an artifact of the fix for this one, and is a separate issue, but effectively blocks testing of this bz.

Comment 8 Corey Welton 2010-06-30 13:45:49 UTC
QA Verified.

Comment 9 Corey Welton 2010-08-12 16:44:13 UTC
Mass-closure of verified bugs against JON.