Activity log for bug #1573320

Date Who What changed Old value New value Message
2016-04-22 00:08:04 Franklin Naval bug added bug
2016-04-22 00:18:00 Franklin Naval description 1. Create a Load Balancer. 2. Create a Listener with TCP 3. Create a Pool with HTTP 4. Observe the following error: {"NeutronError": {"message": "Listener protocol TCP and pool protocol HTTP are not compatible.", "type": "ListenerPoolProtocolMismatch", "detail": ""} 5. List Pools. Result: Pool still gets created after the error. Expected: Pool should not get created if the listener and the pool protocols are not compatible. Note: This bug occurs on any mismatch of protocols between listener and pool: TCP vs HTTP, TCP vs HTTPS, TCP vs TERMINATED_HTTPS, HTTP vs TCP, etc. Log (note the creation of pool "95300d77-084a-4015-804f-698d960b8050" after the 409 error): 2016-04-21 22:15:04.370 17603 INFO tempest.lib.common.rest_client [req-411d6275-9341-4c53-ac13-3a879ae95ed1 ] Request (TestProtocols: test_create_listener_and_pool_with_protocol): 409 POST http://127.0.0.1:9696/v2.0/lbaas/pools 0.339s 2016-04-21 22:15:04.370 17603 DEBUG tempest.lib.common.rest_client [req-411d6275-9341-4c53-ac13-3a879ae95ed1 ] Request - Headers: {'X -Auth-Token': '<omitted>', 'Accept': 'application/json', 'Content-Type': 'application/json'} Body: {"pool": {"name": "pool-1818041961", "protocol": "HTTP", "admin_state_up": true, "description": "pool_description-15184 40568", "session_persistence": null, "listener_id": "7e4a7347-4113-4de4-9af9-092fc532bf23", "loadbalancer_id": "9c65fe8b-cc24-4e5b-8d ae-bcfb22c0163f", "lb_algorithm": "ROUND_ROBIN"}} Response - Headers: {'content-length': '151', 'x-openstack-request-id': 'req-411d6275-9341-4c53-ac13-3a879ae95ed1', 'date': 'Thu, 21 Apr 2016 22:15:04 GMT', 'content-type': 'application/json', 'connection': 'close', 'status': '409'} Body: {"NeutronError": {"message": "Listener protocol TCP and pool protocol HTTP are not compatible.", "type": "ListenerPoolProtocolMismatch", "detail": ""}} _log_request_full /opt/stack/neutron-lbaas/.tox/apiv2/local/lib/python2.7/site-packages/tempest/lib/common/rest_client.py:414 2016-04-21 22:15:04.590 17603 INFO tempest.lib.common.rest_client [req-97add959-c5f8-4389-8f4a-41708b59cc92 ] Request (TestProtocols:tearDown): 200 GET http://127.0.0.1:9696/v2.0/lbaas/loadbalancers/9c65fe8b-cc24-4e5b-8dae-bcfb22c0163f 0.188s 2016-04-21 22:15:04.590 17603 DEBUG tempest.lib.common.rest_client [req-97add959-c5f8-4389-8f4a-41708b59cc92 ] Request - Headers: {'X-Auth-Token': '<omitted>', 'Accept': 'application/json', 'Content-Type': 'application/json'} Body: None Response - Headers: {'content-length': '517', 'x-openstack-request-id': 'req-97add959-c5f8-4389-8f4a-41708b59cc92', 'date': 'Thu, 21 Apr 2016 22:15:04 GMT', 'content-location': 'http://127.0.0.1:9696/v2.0/lbaas/loadbalancers/9c65fe8b-cc24-4e5b-8dae-bcfb22c0163f', 'content-type': 'application/json', 'connection': 'close', 'status': '200'} Body: {"loadbalancer": {"description": "", "admin_state_up": true, "tenant_id": "59c6e9a660b94e97b0f2a4919974c220", "provisioning_status": "ACTIVE", "vip_subnet_id": "732198a3-0a70-478a-a4dc-a9cee967f423", "listeners": [{"id": "7e4a7347-4113-4de4-9af9-092fc532bf23"}], "vip_address": "10.100.0.2", "vip_port_id": "27c8f167-a10d-4d6f-b7fd-12e4f0373e5e", "provider": "octavia", "pools": [{"id": "95300d77-084a-4015-804f-698d960b8050"}], "id": "9c65fe8b-cc24-4e5b-8dae-bcfb22c0163f", "operating_status": "ONLINE", "name": ""}} _log_request_full /opt/stack/neutron-lbaas/.tox/apiv2/local/lib/python2.7/site-packages/tempest/lib/common/rest_client.py:414 1. Create a Load Balancer. 2. Create a Listener with TCP 3. Create a Pool with HTTP 4. Observe the following error: {"NeutronError": {"message": "Listener protocol TCP and pool protocol HTTP are not compatible.", "type": "ListenerPoolProtocolMismatch", "detail": ""} 5. List Pools. Result: Pool still gets created after the error. Expected: Pool should not get created if the listener and the pool protocols are not compatible. Note: This bug occurs on any mismatch of protocols between listener and pool: TCP vs HTTP, TCP vs HTTPS, HTTP vs TCP, etc. Log (note the creation of pool "95300d77-084a-4015-804f-698d960b8050" after the 409 error): 2016-04-21 22:15:04.370 17603 INFO tempest.lib.common.rest_client [req-411d6275-9341-4c53-ac13-3a879ae95ed1 ] Request (TestProtocols: test_create_listener_and_pool_with_protocol): 409 POST http://127.0.0.1:9696/v2.0/lbaas/pools 0.339s 2016-04-21 22:15:04.370 17603 DEBUG tempest.lib.common.rest_client [req-411d6275-9341-4c53-ac13-3a879ae95ed1 ] Request - Headers: {'X -Auth-Token': '<omitted>', 'Accept': 'application/json', 'Content-Type': 'application/json'}         Body: {"pool": {"name": "pool-1818041961", "protocol": "HTTP", "admin_state_up": true, "description": "pool_description-15184 40568", "session_persistence": null, "listener_id": "7e4a7347-4113-4de4-9af9-092fc532bf23", "loadbalancer_id": "9c65fe8b-cc24-4e5b-8d ae-bcfb22c0163f", "lb_algorithm": "ROUND_ROBIN"}}     Response - Headers: {'content-length': '151', 'x-openstack-request-id': 'req-411d6275-9341-4c53-ac13-3a879ae95ed1', 'date': 'Thu,  21 Apr 2016 22:15:04 GMT', 'content-type': 'application/json', 'connection': 'close', 'status': '409'}         Body: {"NeutronError": {"message": "Listener protocol TCP and pool protocol HTTP are not compatible.", "type": "ListenerPoolProtocolMismatch", "detail": ""}} _log_request_full /opt/stack/neutron-lbaas/.tox/apiv2/local/lib/python2.7/site-packages/tempest/lib/common/rest_client.py:414 2016-04-21 22:15:04.590 17603 INFO tempest.lib.common.rest_client [req-97add959-c5f8-4389-8f4a-41708b59cc92 ] Request (TestProtocols:tearDown): 200 GET http://127.0.0.1:9696/v2.0/lbaas/loadbalancers/9c65fe8b-cc24-4e5b-8dae-bcfb22c0163f 0.188s 2016-04-21 22:15:04.590 17603 DEBUG tempest.lib.common.rest_client [req-97add959-c5f8-4389-8f4a-41708b59cc92 ] Request - Headers: {'X-Auth-Token': '<omitted>', 'Accept': 'application/json', 'Content-Type': 'application/json'}         Body: None     Response - Headers: {'content-length': '517', 'x-openstack-request-id': 'req-97add959-c5f8-4389-8f4a-41708b59cc92', 'date': 'Thu, 21 Apr 2016 22:15:04 GMT', 'content-location': 'http://127.0.0.1:9696/v2.0/lbaas/loadbalancers/9c65fe8b-cc24-4e5b-8dae-bcfb22c0163f', 'content-type': 'application/json', 'connection': 'close', 'status': '200'}         Body: {"loadbalancer": {"description": "", "admin_state_up": true, "tenant_id": "59c6e9a660b94e97b0f2a4919974c220", "provisioning_status": "ACTIVE", "vip_subnet_id": "732198a3-0a70-478a-a4dc-a9cee967f423", "listeners": [{"id": "7e4a7347-4113-4de4-9af9-092fc532bf23"}], "vip_address": "10.100.0.2", "vip_port_id": "27c8f167-a10d-4d6f-b7fd-12e4f0373e5e", "provider": "octavia", "pools": [{"id": "95300d77-084a-4015-804f-698d960b8050"}], "id": "9c65fe8b-cc24-4e5b-8dae-bcfb22c0163f", "operating_status": "ONLINE", "name": ""}} _log_request_full /opt/stack/neutron-lbaas/.tox/apiv2/local/lib/python2.7/site-packages/tempest/lib/common/rest_client.py:414 For explicitness, here are the combos I've seen this bug hit on: Listener protocol HTTP and pool protocol HTTPS are not compatible. Listener protocol TCP and pool protocol HTTPS are not compatible. Listener protocol HTTPS and pool protocol HTTP are not compatible. Listener protocol TCP and pool protocol HTTP are not compatible. Listener protocol HTTP and pool protocol TCP are not compatible. Listener protocol HTTPS and pool protocol TCP are not compatible.
2016-04-26 14:45:32 Doug Wiegley neutron: status New Confirmed
2016-04-26 14:45:38 Doug Wiegley neutron: importance Undecided Low
2016-04-26 14:45:51 Doug Wiegley tags lbaasv2 lbaas lbaasv2 low-hanging-fruit
2016-04-26 21:00:50 Marcellin Fom Tchassem neutron: assignee Marcellin Fom Tchassem (mf6510)
2016-05-03 16:48:04 Marcellin Fom Tchassem neutron: assignee Marcellin Fom Tchassem (mf6510)
2016-05-06 15:53:18 j_king marked as duplicate 1556342