Bug 970714

Summary: Cannot browse the GUI while the plugin scan is running
Product: [JBoss] JBoss Operations Network Reporter: Thomas Segismont <tsegismo>
Component: Core ServerAssignee: Thomas Segismont <tsegismo>
Status: CLOSED CURRENTRELEASE QA Contact: Mike Foley <mfoley>
Severity: medium Docs Contact:
Priority: urgent    
Version: JON 3.1.2CC: hrupp, jkandasa, mazz
Target Milestone: ER01   
Target Release: JON 3.2.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 970177 Environment:
Last Closed: 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: 970177    
Bug Blocks:    

Description Thomas Segismont 2013-06-04 16:52:59 UTC
+++ This bug was initially created as a clone of Bug #970177 +++

Description of problem:
Cannot browse the GUI if the plugin scan task does not execute quickly.

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

How reproducible:
Always

Steps to Reproduce:
1.Upload a new (version of a) plugin with various resource types (ie as7 plugin)
2.Wait for the plugin scan task to start (look at the server logs)
3.While the server is updating resource types, try to browse the GUI

Actual results:
Cannot browse the GUI and the server logs shows the attached stack trace

Expected results:
Can browse the GUI

Additional info:
The plugin scan is currently triggered with an EJB timer in a @Singleton bean (org.rhq.enterprise.server.core.StartupBean). Those beans by default have container managed concurrency. Without any annotations, the container serializes calls to the bean. So the AuthenticationFilter timeouts on its try to call org.rhq.enterprise.server.core.StartupLocal#isInitialized

--- Additional comment from Thomas Segismont on 2013-06-03 17:58:24 CEST ---

Comments from IRC

<mazz> BTW, there are other @Singleton SLSBs we should examine for this same kind of thing
<mazz> I see two that we should look at
<mazz> org.rhq.enterprise.server.cassandra.SessionManagerBean
<mazz> (that's something jsanda put together for the storage stuff)
<mazz> and org.rhq.enterprise.server.auth.prefs.SubjectPreferencesCacheBean

--- Additional comment from John Mazzitelli on 2013-06-03 18:06:44 CEST ---

(In reply to Thomas Segismont from comment #1)
> <mazz> BTW, there are other @Singleton SLSBs we should examine for this same
> kind of thing
> <mazz> and org.rhq.enterprise.server.auth.prefs.SubjectPreferencesCacheBean

That SubjectPreferencesCacheBean is OK - I remember doing this. Its explicitly marked as CONTAINER and we use the EJB LOCK annotations to ensure we have read/write locking around the appropriate places.

We should ask John S. just to confirm that SessionManagerBean is OK.

Comment 1 Thomas Segismont 2013-06-06 21:14:22 UTC
Fixed in master. See upstream BZ970177

Comment 2 Larry O'Leary 2013-09-06 14:30:47 UTC
As this is MODIFIED or ON_QA, setting milestone to ER1.

Comment 3 Jeeva Kandasamy 2013-09-24 11:55:41 UTC
Able to access the GUI, while executing plugin scan task. There is no error/exception trace while running this task and able to access GUI.

Version: 3.2.0.ER1
Build Number: 54dd29c:464a643
GWT Version: 2.5.0
SmartGWT Version: 3.0