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:
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
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.
James Livingston <jlivings> updated the status of jira PRODMGT-894 to Resolved
We just need to backport https://github.com/wildfly/wildfly-core/commit/1d973da5e4b1c5d3f5b9e2695f666e8a27f00553
Verified in EAP 6.4.0.DR1.1.
Updated the doc_text.