Description of problem: firstly set route-backends with three services, then set the route-backends with two services, but the third one still in haproxy.config and can be accessed. Version-Release number of selected component (if applicable): oc v3.3.0.30 kubernetes v1.3.0+52492b4 How reproducible: always Steps to Reproduce: 1. Create PodA, ServiceA, PodB, ServiceB, PodC and ServiceC (see additional info for json file), 2. create route "unsecure-route" and set to "roundrobin" mode, 3. run "oc set route-backends unsecure-route service-unsecure=1 service-unsecure-2=1 service-unsecure-3=2" then run "oc set route-backends unsecure-route" to check the backends, 4. run "oc set route-backends unsecure-route service-unsecure=1 service-unsecure-2=1" then run "oc set route-backends unsecure-route" to check the backends 5. oc rsh router and check haproxy.config Actual results: 3. it shows three services [root@localhost ~]# oc set route-backends unsecure-route NAME KIND TO WEIGHT routes/unsecure-route Service service-unsecure 1 (25%) routes/unsecure-route Service service-unsecure-2 1 (25%) routes/unsecure-route Service service-unsecure-3 2 (50%) 4. it shows two services [root@localhost ~]# oc set route-backends unsecure-route NAME KIND TO WEIGHT routes/unsecure-route Service service-unsecure 1 (50%) routes/unsecure-route Service service-unsecure-2 1 (50%) [root@localhost ~]# oc describe route Name: unsecure-route Namespace: hongli Created: 3 hours ago Labels: name=service-unsecure Annotations: haproxy.router.openshift.io/balance=roundrobin openshift.io/host.generated=true Requested Host: unsecure-route-hongli.0913-wgl.qe.rhcloud.com exposed on router router 3 hours ago Path: <none> TLS Termination: <none> Insecure Policy: <none> Endpoint Port: http Service: service-unsecure Weight: 1 (50%) Endpoints: 10.2.2.5:8080 Service: service-unsecure-2 Weight: 1 (50%) Endpoints: 10.2.3.3:8080 5. the haproxy.config not synced and still has three rules. server 18d100f963857b83938593f531373c36 10.2.2.5:8080 check inter 5000ms cookie 18d100f963857b83938593f531373c36 weight 1 server 5cba5dcd816b49cb85a89843fb79747a 10.2.3.3:8080 check inter 5000ms cookie 5cba5dcd816b49cb85a89843fb79747a weight 1 server db13b73145e432c4b5ff550f024e0d71 10.2.4.4:8080 check inter 5000ms cookie db13b73145e432c4b5ff550f024e0d71 weight 2 Expected results: the third rule should be removed from haproxy.config workaround: set the third service to "zero" will remove the rule from haproxy.config, then reconfigure the route-backends with other two service. Additional info: PodA & serviceA # oc create -f https://raw.githubusercontent.com/openshift-qe/v3-testfiles/master/routing/abrouting/caddy-docker.json # oc create -f https://raw.githubusercontent.com/openshift-qe/v3-testfiles/master/routing/abrouting/unseucre/service_unsecure.json PodB & serviceB # oc create -f https://raw.githubusercontent.com/openshift-qe/v3-testfiles/master/routing/abrouting/caddy-docker-2.json # oc create -f https://raw.githubusercontent.com/openshift-qe/v3-testfiles/master/routing/abrouting/unseucre/service_unsecure-2.json PodC & serviceC # oc create -f https://raw.githubusercontent.com/openshift-qe/v3-testfiles/master/routing/abrouting/caddy-docker-3.json # oc create -f https://raw.githubusercontent.com/openshift-qe/v3-testfiles/master/routing/abrouting/unseucre/service_unsecure-3.json
*** This bug has been marked as a duplicate of bug 1374772 ***