Bug 676073

Summary: plugin scan always detects obsolete plugin but doesn't recover
Product: [Other] RHQ Project Reporter: John Mazzitelli <mazz>
Component: Core ServerAssignee: Nobody <nobody>
Status: NEW --- QA Contact: Mike Foley <mfoley>
Severity: medium Docs Contact:
Priority: medium    
Version: 4.0.0.B02   
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description John Mazzitelli 2011-02-08 18:44:16 UTC
Under rare conditions (which I personally have not seen outside of a development environment after rebuilding plugins and redeploying them), when you start the server, you might see server log messages such as this repeat periodically:

13:35:27,556 INFO  [AgentPluginDescriptorUtil] Plugins [AgentPlugin [id=0, name=ABC, md5=8294c70de4b38f101dc4a1fda11d0955], AgentPlugin [id=10027, name=ABC, md5=183a943b3947873ad36d25a63d1c40cb]] are the same logical plugin but have different content. The plugin [AgentPlugin [id=0, name=ABC, md5=8294c70de4b38f101dc4a1fda11d0955]] will be considered obsolete.

Need to figure out why the server doesn't stop reporting the obsolete plugin.

The workaround is as follows:

1) shut down the RHQ Server
2) remove the plugin jar files from the RHQ Server's plugins directory located at <rhq-server-install-dir>/jbossas/server/default/deploy/rhq.ear/rhq-downloads/rhq-plugins
3) restart the RHQ Server

If you do not know which plugins are causing the problem (the server log messages tell you which ones are causing the problem, you have to know the filename of the plugin jar that matches the name of the plugin in the log message), then you can simply delete all the plugin jars from the server's plugin directory. At startup, the server will stream the plugins' content from the database and write the plugin jar files to the plugin directory as appropriate.