Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-13836 Pass the Jakarta EE 9 Platform TCK
  3. WFLY-14029

EE 9 Platform TCK connector failures due to duplicate installation of R-A services

XMLWordPrintable

    • Icon: Sub-task Sub-task
    • Resolution: Done
    • Icon: Major Major
    • 22.0.0.Alpha1
    • None
    • JCA

      The connector tests in the EE 9 platform TCK have 56 failures that stem from failures to deploy two of the rars the TCK deploys, whitebox-mixedmode.rar and whitebox-permissiondd.rar. Both fail to deploy with a failure message similar to this:

      2020-10-29 15:01:48,363 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 10) MSC000001: Failed to start service jboss.ra.deployment."whitebox-mixedmode.rar": org.jboss.msc.service.StartException in service jboss.ra.deployment."whitebox-mixedmode.rar": WFLYJCA0046: Failed to start RA deployment [whitebox-mixedmode.rar]
      at org.jboss.as.connector.services.resourceadapters.deployment.AbstractResourceAdapterDeploymentService$2.run(AbstractResourceAdapterDeploymentService.java:340) [wildfly-connector-22.0.0.Beta1-SNAPSHOT.jar:22.0.0.Beta1-SNAPSHOT]
      at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35) [jboss-threads-2.4.0.Final.jar:2.4.0.Final]
      at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1990) [jboss-threads-2.4.0.Final.jar:2.4.0.Final]
      at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486) [jboss-threads-2.4.0.Final.jar:2.4.0.Final]
      at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377) [jboss-threads-2.4.0.Final.jar:2.4.0.Final]
      at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_265]
      at org.jboss.threads.JBossThread.run(JBossThread.java:513) [jboss-threads-2.4.0.Final.jar:2.4.0.Final]
      Caused by: org.jboss.msc.service.DuplicateServiceException: Service jboss.ra.whitebox-mixedmode is already registered
      at org.jboss.msc.service.ServiceRegistrationImpl.set(ServiceRegistrationImpl.java:135) [jboss-msc-1.4.12.Final.jar:1.4.12.Final]
      at org.jboss.msc.service.ServiceControllerImpl.startInstallation(ServiceControllerImpl.java:243) [jboss-msc-1.4.12.Final.jar:1.4.12.Final]
      at org.jboss.msc.service.ServiceContainerImpl.install(ServiceContainerImpl.java:747) [jboss-msc-1.4.12.Final.jar:1.4.12.Final]
      at org.jboss.msc.service.ServiceTargetImpl.install(ServiceTargetImpl.java:260) [jboss-msc-1.4.12.Final.jar:1.4.12.Final]
      at org.jboss.msc.service.ServiceControllerImpl$ChildServiceTarget.install(ServiceControllerImpl.java:2065) [jboss-msc-1.4.12.Final.jar:1.4.12.Final]
      at org.jboss.msc.service.ServiceBuilderImpl.install(ServiceBuilderImpl.java:192) [jboss-msc-1.4.12.Final.jar:1.4.12.Final]
      at org.jboss.as.connector.services.resourceadapters.deployment.ResourceAdapterXmlDeploymentService.start(ResourceAdapterXmlDeploymentService.java:140) [wildfly-connector-22.0.0.Beta1-SNAPSHOT.jar:22.0.0.Beta1-SNAPSHOT]
      

      It seems both ResourceAdapterDeploymentService and ResourceAdapterXmlDeploymentService are attempting to install the ResourceAdapterService.

      I believe this is due to IronJacamar not handling completely its Version.V_20 that was added in JBJCA-1412. There are a number of classes that check for Version.V_17 and adapt handling if that's the version. Version.V_20 is logically equivalent (EE 9 and EE 8 are not meant to have different behavior) so those same check should consider Version.V_20. I'll file a JBJCA.

      If I change the ra.xml files in the two rars to use the 1.6 or 1.7 version and namespace but make no other changes to the configs the connector tests all pass.

            tadamski@redhat.com Tomasz Adamski
            bstansbe@redhat.com Brian Stansberry
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: