Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1110635

Summary: [GSS] (6.4.0) Deployment overlay feature does not work if a leading / is present on the overlay path
Product: [JBoss] JBoss Enterprise Application Platform 6 Reporter: Lyle Wang <lywang>
Component: ServerAssignee: Brad Maxwell <bmaxwell>
Status: CLOSED CURRENTRELEASE QA Contact: Jan Martiska <jmartisk>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.3.0CC: ahoness, bmaxwell, joallen, kkhan, myarboro, nchaudha, sdouglas
Target Milestone: DR1   
Target Release: EAP 6.4.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
In previous release of JBoss EAP 6, adding a deployment overlay prefixed with a '/' did not work. In JBoss EAP 6.4, this has been fixed. The deployment-overlay works with or with out a leading '/' deployment-overlay add --name=example-overlay --content=/lib/example.jar=eap6-overlay-example.jar --deployments=example.ear
Story Points: ---
Clone Of:
: 1129836 (view as bug list) 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:    
Bug Blocks: 1129836    
Attachments:
Description Flags
resource adapter deployment for testing none

Description Lyle Wang 2014-06-18 06:25:17 UTC
Created attachment 909859 [details]
resource adapter deployment for testing

Description of problem:

According to WFLY-1359[1], we should be able to add a jar for an existing deployment.

Testing against JBoss EAP 6.3.0 beta (and also WildFly 8.1.0 Final), the deployment-overlay feature reports errors on adding a new .jar for a .rar resource adapter deployment.

[1] - https://issues.jboss.org/browse/WFLY-1359


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

jboss-as-server-7.4.0.Final-redhat-11.jar:7.4.0.Final-redhat-11
jboss-vfs-3.2.4.Final-redhat-1.jar:3.2.4.Final-redhat-1


How reproducible: always


Steps to Reproduce:

1. Deploy attached "wmq.jmsra.rar" on a newly installed EAP 6.3.0 beta

2. In CLI, use deployment-overlay command to add a .jar file for deployment "wmq.jmsra.rar" (overlay-2.jar can be any .jar file containing some additional classes which might be used later by the resource adapter)

[standalone@localhost:9999 /] deployment-overlay add --name=myOverlay --content=/overlay-2.jar=/home/lyle.w/Desktop/01113565/overlay-2.jar --deployments=wmq.jmsra.rar --redeploy-affected

3. Get following error in CLI:

===========================
{"JBAS014653: Composite operation failed and was rolled back. Steps that failed:" => {"Operation step-4" => {"JBAS014671: Failed services" => {"jboss.deployment.unit.\"wmq.jmsra.rar\".STRUCTURE" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"wmq.jmsra.rar\".STRUCTURE: JBAS018733: Failed to process phase STRUCTURE of deployment \"wmq.jmsra.rar\"
    Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS010444: Failed to process RA child archives for [\"/content/wmq.jmsra.rar\"]
    Caused by: java.io.IOException: VFS000017: Filesystem already mounted at mount point \"\"/content/wmq.jmsra.rar/overlay-2.jar\"\""}}}}
===========================


4. Get following error in server.log:
===========================
15:51:52,501 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-5) JBAS015876: Starting deployment of "wmq.jmsra.rar" (runtime-name: "wmq.jmsra.rar")
15:51:52,646 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-1) MSC000001: Failed to start service jboss.deployment.unit."wmq.jmsra.rar".STRUCTURE: org.jboss.msc.service.StartException in service jboss.deployment.unit."wmq.jmsra.rar".STRUCTURE: JBAS018733: Failed to process phase STRUCTURE of deployment "wmq.jmsra.rar"
	at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:166) [jboss-as-server-7.4.0.Final-redhat-11.jar:7.4.0.Final-redhat-11]
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1980) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1913) [jboss-msc-1.1.5.Final-redhat-1.jar:1.1.5.Final-redhat-1]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_55]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_55]
	at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_55]
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS010444: Failed to process RA child archives for ["/content/wmq.jmsra.rar"]
	at org.jboss.as.connector.deployers.ra.processors.RaStructureProcessor.deploy(RaStructureProcessor.java:105)
	at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:159) [jboss-as-server-7.4.0.Final-redhat-11.jar:7.4.0.Final-redhat-11]
	... 5 more
Caused by: java.io.IOException: VFS000017: Filesystem already mounted at mount point ""/content/wmq.jmsra.rar/overlay-2.jar""
	at org.jboss.vfs.VFS.mount(VFS.java:127) [jboss-vfs-3.2.4.Final-redhat-1.jar:3.2.4.Final-redhat-1]
	at org.jboss.vfs.VFS.doMount(VFS.java:336) [jboss-vfs-3.2.4.Final-redhat-1.jar:3.2.4.Final-redhat-1]
	at org.jboss.vfs.VFS.mountZip(VFS.java:386) [jboss-vfs-3.2.4.Final-redhat-1.jar:3.2.4.Final-redhat-1]
	at org.jboss.vfs.VFS.mountZip(VFS.java:410) [jboss-vfs-3.2.4.Final-redhat-1.jar:3.2.4.Final-redhat-1]
	at org.jboss.as.connector.deployers.ra.processors.RaStructureProcessor.deploy(RaStructureProcessor.java:96)
	... 6 more

15:51:52,652 ERROR [org.jboss.as.server] (management-handler-thread - 6) JBAS015860: Redeploy of deployment "wmq.jmsra.rar" was rolled back with the following failure message: 
{"JBAS014671: Failed services" => {"jboss.deployment.unit.\"wmq.jmsra.rar\".STRUCTURE" => "org.jboss.msc.service.StartException in service jboss.deployment.unit.\"wmq.jmsra.rar\".STRUCTURE: JBAS018733: Failed to process phase STRUCTURE of deployment \"wmq.jmsra.rar\"
    Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: JBAS010444: Failed to process RA child archives for [\"/content/wmq.jmsra.rar\"]
    Caused by: java.io.IOException: VFS000017: Filesystem already mounted at mount point \"\"/content/wmq.jmsra.rar/overlay-2.jar\"\""}}
===========================



Actual results:

Failed to add overlay to deployment "wmq.jmsra.rar"

Expected results:

rar deployment overlay is expected to be supported, just as in EAP 6.3.0 we can add .jar into .war/WEB-INF/lib/ using the same overlay mechanism.

Additional info:

Comment 2 James Livingston 2014-06-18 23:21:45 UTC
https://github.com/wildfly/wildfly/commit/91ded534337a5f7420b87422da72b528e248bb58 has changes to RaStructureProcessor and they looks equivalent to the EAR/WAR ones.  The isn't a test for it though so maybe something causes it not to work properly

Comment 3 Stuart Douglas 2014-07-02 20:29:50 UTC
I investigated and it turns out that this is because you are using the path /overlay-2.jar instead of just overlay-2.jar without the leading slash.

This is a bug, I will fix it so both versions work, however it is low priority as the workaround is trivial.

Comment 4 JBoss JIRA Server 2014-07-17 05:26:48 UTC
James Livingston <jlivings> updated the status of jira PRODMGT-894 to Resolved

Comment 5 James Livingston 2014-07-17 05:27:29 UTC
We just need to backport https://github.com/wildfly/wildfly-core/commit/1d973da5e4b1c5d3f5b9e2695f666e8a27f00553

Comment 7 Jan Martiska 2014-09-18 09:33:26 UTC
Verified in EAP 6.4.0.DR1.1.

Comment 8 Nidhi 2015-01-22 10:26:12 UTC
Updated the doc_text.