ODE
  1. ODE
  2. ODE-489

ServixMix leaves bpel active http endpoint after undeploying service assembly

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Cannot Reproduce
    • Affects Version/s: 1.2
    • Fix Version/s: 1.3.4
    • Component/s: JBI Integration
    • Labels:
      None
    • Environment:
      Mac OS 10.5, java version "1.6.0_07", ServiceMix 3.3 ,ODE JBI 1.2

      Description

      Please note that the same issue was reported to the ServiceMix team: https://issues.apache.org/activemq/browse/SM-1767 as it is not clear which component causes the problem.

      While I was testing configuration for a project I work on (multiple SA with http soap consumer proxy which represent the same abstract WSDL of a BPEL process), I have noticed that one of the http endpoints doesn't get unregistered after corresponding SA is undeployed.
      To make sure the problem is not specific to our project, I have used 2 hello example SA projects

      Here are steps required to reproduce the problem
      1. unzip the hello.tar attached to this issue, you should have two subdirectories: ode-jbi-hello and ode-jbi-hello1.
      2. cd to ode-jbi-hello, run mvn install and then copy hello-sa/target/hello-sa-0.0.1-SNAPSHOT.zip to $SERVICEMIX_HOME/hotdeploy directory
      3. cd to ode-jbi-hello1, run mvn install and then copy hello-sa1/target/hello-sa1-0.0.1-SNAPSHOT.zip to $SERVICEMIX_HOME/hotdeploy directory
      4. Both SA should deploy without any errors (different urls, endpoints and service names were used to ensure there is no conflict)
      5. start jconsole and connect to ServiceMix
      6. expand org.apache.servicemix/ServiceMix/Endpoint - you should see 4 http endpoints (2 internal and 2 external) for HelloWorld2.wsdl
      7. rm $SERVICEMIX_HOME/hotdeploy/hello-sa-0.0.1-SNAPSHOT.zip, there will be now 3 http endpoints (2 internal, 1 external) for HelloWorld2.wsdl
      8. rm $SERVICEMIX_HOME/hotdeploy/hello-sa1-0.0.1-SNAPSHOT.zip, there will be now 1 http endpoint (1 internal) for HelloWorld2.wsdl

      ServiceMix log output doesn't report any errors while both SA are undeployed and $SERVICEMIX_HOME/data/smx/service-assemblies/ directory is empty (assuming no other SA were deployed).

      The problem is that when the same SA are redeployed again, ServiceMix throws an error:
      javax.jbi.JBIException: An internal endpoint for service

      {urn:/HelloWorld2.wsdl}

      HelloService and endpoint HelloPort is already registered
      The only way I managed to remove the offending endpoint was by restarting service mix.

      I have repeated the same tests with just one hello SA and if I deployed/undeployed the zip file, then redeploying the same SA doesn't generate any errors, nor there are any unregistered endpoints.

      1. hello.tar
        80 kB
        Monika Adamczyk

        Activity

        Monika Adamczyk created issue -
        Monika Adamczyk made changes -
        Field Original Value New Value
        Attachment hello.tar [ 12397967 ]
        Alexis Midon made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Assignee Rafal Rusin [ rrusin ]
        Resolution Cannot Reproduce [ 5 ]
        Tammo van Lessen made changes -
        Fix Version/s 1.3.4 [ 12314168 ]

          People

          • Assignee:
            Rafal Rusin
            Reporter:
            Monika Adamczyk
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development