Uploaded image for project: 'Red Hat Fuse'
  1. Red Hat Fuse
  2. ENTESB-4956

Fabric8 HTTP gateway does not respond to container version changes without a restart

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: jboss-fuse-6.2.1
    • Fix Version/s: jboss-fuse-6.3
    • Component/s: Fabric8 v1
    • Labels:
    • Environment:

      JBoss Fuse 6.2.0, 6.2.1

    • Sprint:
      6.3 Sprint 2 (1-Feb - 26-Feb)
    • Steps to Reproduce:
      Hide
      fabric:create --clean --profile gateway-http --wait-for-provisioning 
      fabric:profile-edit --pid io.fabric8.gateway.http.mapping-apis/uriTemplate=/version/{version}{contextPath}/ gateway-http
      container-create-child --profile quickstarts-cxf-rest root rest-container1
      container-create-child --profile quickstarts-cxf-rest root rest-container2
      version-create 2.0
      container-upgrade 2.0 rest-container2
      

      Look at the Services -> APIs tab in the Hawtio console. The deployed version of the service in rest-container2 is still shown as 1.0, even though the container version itself is 2.0. Moreover, client requests that match the prefix "1.0/xxx" are still routed by the gateway to rest-container2, even though its version is 2.0.

      Restarting rest-container2 causes the gateway to update, and services are listed with the correct versions.

      Show
      fabric:create --clean --profile gateway-http --wait- for -provisioning fabric:profile-edit --pid io.fabric8.gateway.http.mapping-apis/uriTemplate=/version/{version}{contextPath}/ gateway-http container-create-child --profile quickstarts-cxf- rest root rest -container1 container-create-child --profile quickstarts-cxf- rest root rest -container2 version-create 2.0 container-upgrade 2.0 rest -container2 Look at the Services -> APIs tab in the Hawtio console. The deployed version of the service in rest-container2 is still shown as 1.0, even though the container version itself is 2.0. Moreover, client requests that match the prefix "1.0/xxx" are still routed by the gateway to rest-container2, even though its version is 2.0. Restarting rest-container2 causes the gateway to update, and services are listed with the correct versions.

      Description

      The Fabric8 HTTP gateway understands the notion of container version, and a URI template can be set up so that requests are routed to a container that is of the specified version.

      However, when doing container-upgrade on a container, the gateway does not notice that the version has changed. The Services ->APIs tab in the Hawtio console shows the previous version, and the gateway continues to route requests on the basis of a version that no longer exists.

      The problem persists until the container whose version has changed is restarted.

      WORKAROUND

      restart io.fabric8.fabric-cxf-registry
      

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  sonicaaaa Paolo Antinori
                  Reporter:
                  kboone Kevin Boone
                  Tester:
                  Andrej Vano
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  4 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: