)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8873,"name":"Assaf Muller","email":"amuller@redhat.com","username":"amuller"},"change_message_id":"81bd802d9a94da07ac9a2c58fdbe6dc12c3bd9d9","unresolved":false,"context_lines":[{"line_number":3,"context_line":"AuthorDate: 2015-04-27 14:06:59 +0000"},{"line_number":4,"context_line":"Commit:     sridhargaddam \u003csridhar.gaddam@enovance.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-04-27 14:10:02 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix floatingip status for an HA router"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When we associate a floatingip in an HA router setup, it is properly"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"7ad32947_fc8e6126","line":6,"updated":"2015-04-27 14:18:06.000000000","message":"NACK:\n\nFloating IP status is persisted in the DB as a single status, while for HA routers it is floating IPs are distributed. What if one L3 agent configures the floating IP successfully while another doesn\u0027t? What should the status of the floating IP be?\n\nThis is a pretty complicated problem to solve and until that happens I think that it makes sense to not report a status at all.","commit_id":"419448b43f80a64f0268a2576544c0e2d68aad4b"},{"author":{"_account_id":10257,"name":"Sridhar Gaddam","email":"sgaddam@redhat.com","username":"sridhargaddam"},"change_message_id":"25c42db9b90f76331d5bc67eda1eb66fef64de0e","unresolved":false,"context_lines":[{"line_number":3,"context_line":"AuthorDate: 2015-04-27 14:06:59 +0000"},{"line_number":4,"context_line":"Commit:     sridhargaddam \u003csridhar.gaddam@enovance.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-04-27 14:10:02 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix floatingip status for an HA router"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When we associate a floatingip in an HA router setup, it is properly"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3acd31a7_b3358447","line":6,"in_reply_to":"7ad32947_1f734f4f","updated":"2015-04-30 15:35:21.000000000","message":"From the agent side, we are doing an RPC for all the floatingips hosted on a router.   \nhttps://github.com/openstack/neutron/blob/master/neutron/agent/l3/agent.py#L346\n\nAlso, noticed that when a subsequent process update is called on the agent side,\n the status of the floating-ip would be set to ACTIVE [1] (as it will be part of existing_cidrs).\n[1] - https://github.com/openstack/neutron/blob/master/neutron/agent/l3/router_info.py#L242\n\nSo not sure if we are having any benefit by not setting the state to ACTIVE [2] in the first run.\n[2] - https://github.com/openstack/neutron/blob/master/neutron/agent/l3/ha_router.py#L244","commit_id":"419448b43f80a64f0268a2576544c0e2d68aad4b"},{"author":{"_account_id":10257,"name":"Sridhar Gaddam","email":"sgaddam@redhat.com","username":"sridhargaddam"},"change_message_id":"4f0ebd9d8e054b3e1a0650238f9531d17407a2b2","unresolved":false,"context_lines":[{"line_number":3,"context_line":"AuthorDate: 2015-04-27 14:06:59 +0000"},{"line_number":4,"context_line":"Commit:     sridhargaddam \u003csridhar.gaddam@enovance.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-04-27 14:10:02 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix floatingip status for an HA router"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When we associate a floatingip in an HA router setup, it is properly"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"7ad32947_ff4c1378","line":6,"in_reply_to":"7ad32947_fc8e6126","updated":"2015-04-27 14:26:15.000000000","message":"Agree that the floatingips are distributed across the various HA routers, but only of the routers (i.e., master) would be configuring the floating ip (as VIP) isn\u0027t it? \n\nWhat is your opinion on reporting the state as ACTIVE only when one of the HA router becomes ACTIVE? Just want to know your thoughts on this.","commit_id":"419448b43f80a64f0268a2576544c0e2d68aad4b"},{"author":{"_account_id":8873,"name":"Assaf Muller","email":"amuller@redhat.com","username":"amuller"},"change_message_id":"754ce72bd29c996c67af85a715953a8433d44626","unresolved":false,"context_lines":[{"line_number":3,"context_line":"AuthorDate: 2015-04-27 14:06:59 +0000"},{"line_number":4,"context_line":"Commit:     sridhargaddam \u003csridhar.gaddam@enovance.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-04-27 14:10:02 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix floatingip status for an HA router"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When we associate a floatingip in an HA router setup, it is properly"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"7ad32947_1f734f4f","line":6,"in_reply_to":"7ad32947_ff4c1378","updated":"2015-04-27 14:34:39.000000000","message":"We could tie the floating IPs reporting to the HA state reporting, sure (This was not possible when HA routers were implemented because we did not report HA router states). When an agent reports HA routers states, you loop through all of the routers that are locally in the MASTER state, and send a floating IP status per floating IP that is served by that router. This could only be implemented with a bulk-update for floating IP statuses, because sending one RPC message (And consequentially one DB update) per floating IP is not scalable in the least.","commit_id":"419448b43f80a64f0268a2576544c0e2d68aad4b"}],"neutron/agent/l3/ha_router.py":[{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"3f5753717392eb94551473a66e913cc177154483","unresolved":false,"context_lines":[{"line_number":253,"context_line":"        fip_ip \u003d fip[\u0027floating_ip_address\u0027]"},{"line_number":254,"context_line":"        ip_cidr \u003d common_utils.ip_to_cidr(fip_ip)"},{"line_number":255,"context_line":"        self._add_vip(ip_cidr, interface_name)"},{"line_number":256,"context_line":"        # TODO(Carl) Should this return status?"},{"line_number":257,"context_line":"        # return l3_constants.FLOATINGIP_STATUS_ACTIVE"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"    def remove_floating_ip(self, device, ip_cidr):"}],"source_content_type":"text/x-python","patch_set":3,"id":"da6ed579_e7550750","side":"PARENT","line":256,"range":{"start_line":256,"start_character":15,"end_line":256,"end_character":19},"updated":"2016-01-13 18:50:17.000000000","message":"I should have followed up on this.  I remember hitting this case in the refactoring.  I actually left it this way to ensure that the refactor was pure and preserve the behavior as I found it.  The refactoring didn\u0027t break this.","commit_id":"6576b7061ea4c4068246bbd01f605a12e689c2c6"},{"author":{"_account_id":14757,"name":"Timothy Swanson","email":"tiswanso@cisco.com","username":"tiswanso"},"change_message_id":"f937230f784c388204ed673540de38d181f275e4","unresolved":false,"context_lines":[{"line_number":253,"context_line":"        fip_ip \u003d fip[\u0027floating_ip_address\u0027]"},{"line_number":254,"context_line":"        ip_cidr \u003d common_utils.ip_to_cidr(fip_ip)"},{"line_number":255,"context_line":"        self._add_vip(ip_cidr, interface_name)"},{"line_number":256,"context_line":"        # TODO(Carl) Should this return status?"},{"line_number":257,"context_line":"        # return l3_constants.FLOATINGIP_STATUS_ACTIVE"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"    def remove_floating_ip(self, device, ip_cidr):"}],"source_content_type":"text/x-python","patch_set":3,"id":"da6ed579_2ea9b4df","side":"PARENT","line":256,"range":{"start_line":256,"start_character":15,"end_line":256,"end_character":19},"in_reply_to":"da6ed579_e7550750","updated":"2016-01-13 20:26:34.000000000","message":"Cool...yeah, I don\u0027t see any effect to other functionality.  Just the setup class for the network_basic_ops tempest tests bail because they assert on FIP status \u003d ACTIVE and without this return status \u003d None.","commit_id":"6576b7061ea4c4068246bbd01f605a12e689c2c6"}]}
