Bug 846269

Summary: [jboss-as-5] Shutdown operation is not performed if server availability can not be determined
Product: [Other] RHQ Project Reporter: Lukas Krejci <lkrejci>
Component: OperationsAssignee: RHQ Project Maintainer <rhq-maint>
Status: CLOSED CURRENTRELEASE QA Contact: Mike Foley <mfoley>
Severity: high Docs Contact:
Priority: high    
Version: 4.5CC: hrupp, loleary
Target Milestone: ---   
Target Release: RHQ 4.5.0   
Hardware: All   
OS: All   
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 837126 Environment:
Last Closed: 2013-09-01 06:04:44 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: 837126, 837129    
Bug Blocks:    

Description Lukas Krejci 2012-08-07 06:13:51 EDT
+++ This bug was initially created as a clone of Bug #837126 +++

Description of problem:
If JBoss EAP server has become unstable due to OutOfMemoryError condition or other problem that prevents the JBoss AS 5 plug-in from obtaining a connection to the server/service, it is reported as DOWN and the shutdown operation invocation does not occur even when a script is used as the shutdown method.

The result is that an unstable or runaway EAP server can not be shutdown from the JON management UI.

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

How reproducible:

Actual results:
If EAP resource is shown with availability of UNKNOWN or DOWN, the shutdown operation is not performed and the operation result is: The server is already shut down.

Expected results:
The shutdown operation should still be invoked regardless of the availability of the EAP resource.

Additional info:
This is due to theo rg.rhq.plugins.jbossas5.ApplicationServerOperationsDelegate.shutDown() first retrieving the availability of the resource and if DOWN is returned, the method is aborted[1]. This prevent a custom shutdown script from performing a forced shutdown in the event the EAP server has become unresponsive (kill -2/kill -9).

[1]: http://git.fedorahosted.org/git?p=rhq/rhq.git;a=blob;f=modules/plugins/jboss-as-5/src/main/java/org/rhq/plugins/jbossas5/ApplicationServerOperationsDelegate.java;h=5ac0413999c735cbd4e688d19c4089bc3b484c6c;hb=refs/heads/release/jon3.1.x#l306

--- Additional comment from loleary@redhat.com on 2012-07-02 18:05:21 EDT ---

This issue prevents an alert definition from performing a resource restart in the event that something bad happens in the resource. For example, if a user wants to auto-restart a production JBoss EAP server in the event that a resource limit is reached (OOME), this issue prevents the restart from being successful.

--- Additional comment from ccrouch@redhat.com on 2012-08-02 22:00:05 EDT ---

We should take a look at this and see if there are any repercussions from removing the avail check.
Comment 1 Lukas Krejci 2012-08-07 06:14:12 EDT
I think that it is safe to remove the avail check. It seems to be in place only to reduce the amount of work we're doing and I don't think it provides much value to the user.

We do nothing and just display the message "The server is already shut down." if we find the avail to be down. I think users wouldn't be surprised to see some slightly more cryptic message from the actual script or JMX call failing if it tried to shutdown a stopped server.
Comment 2 Lukas Krejci 2012-08-07 10:53:33 EDT
master http://git.fedorahosted.org/cgit/rhq/rhq.git/diff/?id=153be59c5228bfe4e63657da405d30b5bdb6b423
Author: Lukas Krejci <lkrejci@redhat.com>
Date:   Tue Aug 7 15:54:18 2012 +0200

    [BZ 846269] - AS5's shutdown operation doesn't require availability to be up.
Comment 3 Heiko W. Rupp 2013-09-01 06:04:44 EDT
Bulk closing of items that are on_qa and in old RHQ releases, which are out for a long time and where the issue has not been re-opened since.