Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-77344

Changes on routes cause small disruption on DCM

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • 4.22
    • Networking / router
    • None
    • None
    • Rejected
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description of problem:

      Whenever a route is changed, the routing configuration is fully removed and added again on two distinct steps. Although this works well on the reload strategy, it is not the same for DCM because those two operations happen dynamically, by removing and adding the route map entry even if there is no change in the pattern used in the map.
      
      This behavior can potentially cause some disruption on busy environments, and should lead to a short outage of the route in the case the API call to add the route back fails and a reload need to be issued.

      Version-Release number of selected component (if applicable):

      -

      How reproducible:

      Always

      Steps to Reproduce:

      * Enable DCM
      * Ensure log level is at least 4
      * Create a route
      * Change the route to a distinct weight

      Actual results:

      Logs include "del map ..." having the map entry ID of the changed route, followed by "add map ..." adding the changed route again.

      Expected results:

      API operations should not include delete the route, except if some route parameter changes.

      Additional info:

      https://issues.redhat.com//browse/OCPBUGS-75009 is changing how these API calls happen, so maybe "del map" + "add map" might be changed by two consecutive "add map" having the full payload. It is considered fix if none of the API calls remove the route being changed, except if a parameter for the routing itself is changed. Anyway this must be an atomic operation, so if an older entry is removed, the new one should be added in the same API call.
      
      https://issues.redhat.com/browse/OCPBUGS-77412 on the other hand is a simplified fix for this issue, which converts the non optimized API calls to a reload instead.

       

              jomorais Joao Morais
              jomorais Joao Morais
              Shudi Li Shudi Li
              None
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated: