Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-4908

Redeploy dependent ear fails with duplicate resource error for persistence unit

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: 8.2.0.Final, 9.0.0.CR2, 9.0.0.Final, 10.0.0.CR4
    • Fix Version/s: 10.1.0.CR1, 10.1.0.Final
    • Component/s: JPA / Hibernate
    • Labels:
      None
    • Environment:
    • Steps to Reproduce:
      Hide
      1. Clone example project from github:

        git clone https://github.com/jfelix-mgn/wildfly-issue.git
        

      2. Move to project dir and build project with gradle (project contains wrapper).

        ./gradlew ear
        

      3. Start wildfly 9.0.0.Final in standalone mode with defaults configurations
      4. Deploy module1.ear from project dir to wildfly server
      5. Deploy module2.ear from project dir to wildfly server
      6. Undeploy module1.ear from wildfly server
      7. Deploy module1.ear from project dir to wildfly server
      Show
      Clone example project from github: git clone https://github.com/jfelix-mgn/wildfly-issue.git Move to project dir and build project with gradle (project contains wrapper). ./gradlew ear Start wildfly 9.0.0.Final in standalone mode with defaults configurations Deploy module1.ear from project dir to wildfly server Deploy module2.ear from project dir to wildfly server Undeploy module1.ear from wildfly server Deploy module1.ear from project dir to wildfly server
    • Bugzilla Update:
      Perform

      Description

      I have two EARs:

      module1.ear  
      |  
      +--ejb.jar  
         |  
        +--META-INF  
            |  
            +--persistence.xml with persistence unit "module1-pu" 
      

      and

      module2.ear  
      |  
      +--META-INF  
      |  |  
      |  +--jboss-all.xml  
      |  
      +--ejb.jar  
         |  
         +--META-INF  
            |  
            +--persistence.xml with persistence unit "module2-pu"  
      

      module2.ear/META-INF/jboss-all.xml contains:

      <jboss xmlns="urn:jboss:1.0">  
        <jboss-deployment-dependencies xmlns="urn:jboss:deployment-dependencies:1.0">  
        <dependency name="module1.ear" />  
        </jboss-deployment-dependencies>  
      </jboss>  
      

      When I redeploy module1.ear, module2.ear not redeployed automatically with error: java.lang.IllegalStateException: WFLYCTL0075: Duplicate resource module2.ear/ejb.jar#module2-pu (on wildfly 8.2.0.Final: java.lang.IllegalStateException: JBAS014666: Duplicate resource module2.ear/ejb.jar#module2-pu)
      Full redeploy log:

      09:11:31,425 INFO  [org.jboss.as.jpa] (ServerService Thread Pool -- 63) WFLYJPA0011: Stopping Persistence Unit (phase 2 of 2) Service 'module2.ear/ejb.jar#module2-pu'  
      09:11:31,426 INFO  [org.jboss.as.jpa] (ServerService Thread Pool -- 63) WFLYJPA0011: Stopping Persistence Unit (phase 1 of 2) Service 'module2.ear/ejb.jar#module2-pu'  
      09:11:31,431 INFO  [org.jboss.as.jpa] (ServerService Thread Pool -- 63) WFLYJPA0011: Stopping Persistence Unit (phase 2 of 2) Service 'module1.ear/ejb.jar#module1-pu'  
      09:11:31,434 INFO  [org.jboss.as.jpa] (ServerService Thread Pool -- 63) WFLYJPA0011: Stopping Persistence Unit (phase 1 of 2) Service 'module1.ear/ejb.jar#module1-pu'  
      09:11:31,437 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-1) WFLYSRV0208: Stopped subdeployment (runtime-name: ejb.jar) in 17ms  
      09:11:31,438 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0028: Stopped deployment module1.ear (runtime-name: module1.ear) in 18ms  
      09:11:31,495 INFO  [org.jboss.as.server] (management-handler-thread - 3) WFLYSRV0009: Undeployed "module1.ear" (runtime-name: "module1.ear")  
      09:11:31,495 INFO  [org.jboss.as.controller] (management-handler-thread - 3) WFLYCTL0183: Service status report  
      WFLYCTL0184:    New missing/unsatisfied dependencies:  
            service jboss.deployment.unit."module1.ear".deploymentCompleteService (missing) dependents: [service jboss.deployment.unit."module2.ear".PARSE, service jboss.deployment.subunit."module2.ear"."ejb.jar".PARSE]   
        
        
      09:11:31,558 INFO  [org.jboss.as.repository] (management-handler-thread - 1) WFLYDR0002: Content removed from location /opt/wildfly/standalone/data/content/69/baf0eeab47c006bc1f3d99b21b4355fac62d13/content  
      09:11:43,170 INFO  [org.jboss.as.repository] (management-handler-thread - 1) WFLYDR0001: Content added at location /opt/wildfly/standalone/data/content/69/baf0eeab47c006bc1f3d99b21b4355fac62d13/content  
      09:11:43,266 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0027: Starting deployment of "module1.ear" (runtime-name: "module1.ear")  
      09:11:43,268 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0207: Starting subdeployment (runtime-name: "ejb.jar")  
      09:11:43,273 INFO  [org.jboss.as.jpa] (MSC service thread 1-1) WFLYJPA0002: Read persistence.xml for module1-pu  
      09:11:43,289 INFO  [org.jboss.as.jpa] (ServerService Thread Pool -- 63) WFLYJPA0010: Starting Persistence Unit (phase 1 of 2) Service 'module1.ear/ejb.jar#module1-pu'  
      09:11:43,289 INFO  [org.hibernate.jpa.internal.util.LogHelper] (ServerService Thread Pool -- 63) HHH000204: Processing PersistenceUnitInfo [  
        name: module1-pu  
        ...]  
      09:11:43,292 INFO  [org.jboss.as.jpa] (ServerService Thread Pool -- 63) WFLYJPA0010: Starting Persistence Unit (phase 2 of 2) Service 'module1.ear/ejb.jar#module1-pu'  
      09:11:43,293 INFO  [org.hibernate.dialect.Dialect] (ServerService Thread Pool -- 63) HHH000400: Using dialect: org.hibernate.dialect.H2Dialect  
      09:11:43,293 WARN  [org.hibernate.dialect.H2Dialect] (ServerService Thread Pool -- 63) HHH000431: Unable to determine H2 database version, certain features may not work  
      09:11:43,294 INFO  [org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory] (ServerService Thread Pool -- 63) HHH000397: Using ASTQueryTranslatorFactory  
      09:11:43,296 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-1) WFLYSRV0070: Deployment restart detected for deployment module2.ear, performing full redeploy instead.  
      09:11:43,296 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-1) WFLYSRV0070: Deployment restart detected for deployment ejb.jar, performing full redeploy instead.  
      09:11:43,296 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-1) WFLYSRV0208: Stopped subdeployment (runtime-name: ejb.jar) in 0ms  
      09:11:43,297 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0028: Stopped deployment module2.ear (runtime-name: module2.ear) in 1ms  
      09:11:43,298 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0027: Starting deployment of "module2.ear" (runtime-name: "module2.ear")  
      09:11:43,299 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-2) WFLYSRV0207: Starting subdeployment (runtime-name: "ejb.jar")  
      09:11:43,300 INFO  [org.jboss.as.jpa] (MSC service thread 1-2) WFLYJPA0002: Read persistence.xml for module2-pu  
      09:11:43,307 INFO  [org.jboss.as.jpa] (ServerService Thread Pool -- 63) WFLYJPA0010: Starting Persistence Unit (phase 1 of 2) Service 'module2.ear/ejb.jar#module2-pu'  
      09:11:43,308 INFO  [org.hibernate.jpa.internal.util.LogHelper] (ServerService Thread Pool -- 63) HHH000204: Processing PersistenceUnitInfo [  
        name: module2-pu  
        ...]  
      09:11:43,312 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC000001: Failed to start service jboss.deployment.subunit."module2.ear"."ejb.jar".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.subunit."module2.ear"."ejb.jar".INSTALL: WFLYSRV0153: Failed to process phase INSTALL of subdeployment "ejb.jar" of deployment "module2.ear"  
        at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:163)  
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)  
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)  
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)  
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)  
        at java.lang.Thread.run(Thread.java:745)  
      Caused by: java.lang.IllegalStateException: WFLYCTL0075: Duplicate resource module2.ear/ejb.jar#module2-pu  
        at org.jboss.as.controller.registry.AbstractModelResource$DefaultResourceProvider.register(AbstractModelResource.java:248)  
        at org.jboss.as.controller.registry.AbstractModelResource.registerChild(AbstractModelResource.java:143)  
        at org.jboss.as.jpa.processor.PersistenceUnitServiceHandler.addManagementConsole(PersistenceUnitServiceHandler.java:1128)  
        at org.jboss.as.jpa.processor.PersistenceUnitServiceHandler.deployPersistenceUnitPhaseTwo(PersistenceUnitServiceHandler.java:704)  
        at org.jboss.as.jpa.processor.PersistenceUnitServiceHandler.addPuService(PersistenceUnitServiceHandler.java:289)  
        at org.jboss.as.jpa.processor.PersistenceUnitServiceHandler.handleJarDeployment(PersistenceUnitServiceHandler.java:162)  
        at org.jboss.as.jpa.processor.PersistenceUnitServiceHandler.deploy(PersistenceUnitServiceHandler.java:133)  
        at org.jboss.as.jpa.processor.PersistenceCompleteInstallProcessor.deploy(PersistenceCompleteInstallProcessor.java:55)  
        at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:156)  
        ... 5 more  
        
        
      09:11:43,376 INFO  [org.jboss.as.server] (management-handler-thread - 2) WFLYSRV0010: Deployed "module1.ear" (runtime-name : "module1.ear")  
      09:11:43,376 INFO  [org.jboss.as.controller] (management-handler-thread - 2) WFLYCTL0183: Service status report  
      WFLYCTL0184:    New missing/unsatisfied dependencies:  
            service jboss.deployment.subunit."module2.ear"."ejb.jar" (unavailable) dependents: [service jboss.deployment.unit."module2.ear".PARSE]   
            service jboss.deployment.subunit."module2.ear"."ejb.jar".STRUCTURE (unavailable) dependents: [service jboss.deployment.unit."module2.ear".PARSE]   
            service jboss.deployment.subunit."module2.ear"."ejb.jar".deploymentCompleteService (missing) dependents: [service jboss.deployment.unit."module2.ear".deploymentCompleteService]   
      WFLYCTL0185:    Newly corrected services:  
            service jboss.deployment.unit."module1.ear".deploymentCompleteService (new available)  
      WFLYCTL0186:   Services which failed to start:      service jboss.deployment.subunit."module2.ear"."ejb.jar".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.subunit."module2.ear"."ejb.jar".INSTALL: WFLYSRV0153: Failed to process phase INSTALL of subdeployment "ejb.jar" of deployment "module2.ear"  
      

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  smarlow Scott Marlow
                  Reporter:
                  felix.mgn Юрий Витковский
                • Votes:
                  2 Vote for this issue
                  Watchers:
                  11 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: