Bug 1400629 - 'Force Shutdown' link removed from Domain topology view even if the server process is alive
Summary: 'Force Shutdown' link removed from Domain topology view even if the server pr...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: JBoss Enterprise Application Platform 6
Classification: JBoss
Component: Web Console
Version: 6.4.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: CR1
: EAP 6.4.13
Assignee: Harald Pehl
QA Contact: Pavel Jelinek
URL:
Whiteboard:
Depends On:
Blocks: eap6413-payload 1393890
TreeView+ depends on / blocked
 
Reported: 2016-12-01 16:31 UTC by Brian Stansberry
Modified: 2017-02-03 16:40 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-02-03 16:40:43 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Pathological war (707.90 KB, application/zip)
2016-12-01 16:34 UTC, Brian Stansberry
no flags Details
Related ear (7.23 KB, application/zip)
2016-12-01 16:36 UTC, Brian Stansberry
no flags Details
Source for deployments (230.53 KB, application/zip)
2016-12-01 16:37 UTC, Brian Stansberry
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1259767 0 urgent CLOSED [GSS](6.4.z) "OutOfMemoryError: PermGen or Unable to Create new native thread " of a given server affects the admin cons... 2021-06-10 10:58:49 UTC
Red Hat Issue Tracker HAL-1241 0 Major Resolved Provide 'Force Shutdown' operation for servers 2018-01-02 10:54:06 UTC

Description Brian Stansberry 2016-12-01 16:31:25 UTC
Description of problem:

The console only displays the 'Force Shutdown' link if it believes the server is started. But in some pathological situations, a broken server can fail to shut down when the 'Stop Server' link in clicked, but the DC and console don't communicate that effectively to each other, the console thinks the server is stopped, and no longer displays the 'Force Shutdown' link. The user is forced to use the CLI or OS tools to kill the server.

Since 'Force Shutdown' is used to deal with pathological conditions, the simply solution is to always provide the 'Force Shutdown' link.

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

6.4 CP11

How reproducible:

Always

Steps to Reproduce:
1. Deploy an application to a server group that includes logic that will not let MSC stop a service. I'll attach such an app in a moment; it includes a servlet destroy() method that will never return, resulting in the service used for that servlet never stopping.
2. For one of the servers that has the app deployed, click the 'Stop Server' link.

Actual results:

Server cannot completely stop normally and needs to be killed. But the console reports it as stopped and does not display the 'Force Shutdown' link.

Expected results:

Server cannot completely stop normally and needs to be killed. The console reports it as stopped but continues to display the 'Force Shutdown' link, giving the user the option to kill the server.


Additional info:

I consider improving the server state communication between the domain and the console such that the console doesn't regard the server as stopped as being out of scope here. It's a valid thing to look at upstream, but what I propose here is a simple fail safe.

Comment 1 Brian Stansberry 2016-12-01 16:32:49 UTC
https://bugzilla.redhat.com/show_bug.cgi?id=1259767 is the related case the testing work on which surfaced this issue.

Comment 2 Brian Stansberry 2016-12-01 16:34:39 UTC
Created attachment 1226870 [details]
Pathological war

Attached a war with a servlet that does not return from destroy() preventing normal undeploy or shutdown.

Comment 3 Brian Stansberry 2016-12-01 16:36:17 UTC
Created attachment 1226883 [details]
Related ear

Ear that the sample-web2.war *may* depend on. Teresa Miyar Gil of GSS gave me these apps; my impression is the war requires the ear to be deployed. The pathological aspect  of the war isn't really related to the ear though.

Comment 4 Brian Stansberry 2016-12-01 16:37:37 UTC
Created attachment 1226884 [details]
Source for deployments

Source for the attached deployments. Note the source is a bit different from the compiled war, as the source has the pathological bit of the DelayServlet's destroy() method commented out.

Comment 9 Michael Cada 2017-01-09 07:56:43 UTC
Verified with EAP 6.4.13.CP.CR1

Comment 10 Petr Penicka 2017-02-03 16:40:43 UTC
Released with EAP 6.4.13 on Feb 02 2017.


Note You need to log in before you can comment on or make changes to this bug.