)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ef27e233c121e4d1ec93309f9b063161eb6f6d86","unresolved":false,"context_lines":[{"line_number":11,"context_line":"\u0027multi_host\u0027 mode."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This hosts file contains all DNS entries of the network and it is"},{"line_number":14,"context_line":"replicated on all host where a \u0027nova-network\u0027 daemon is instancied."},{"line_number":15,"context_line":"There is a hosts file for each networks."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"It needs to add a new network API to update the host file on all"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"AAAAMH%2F%2F7aI%3D","line":14,"updated":"2012-11-15 14:35:27.000000000","message":"instantiated?\nrunning?","commit_id":"f83323e1487433d0de43e2dc114d5b3012ce8b21"}],"nova/network/manager.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ef27e233c121e4d1ec93309f9b063161eb6f6d86","unresolved":false,"context_lines":[{"line_number":1899,"context_line":"                                                        mac_address)"},{"line_number":1900,"context_line":""},{"line_number":1901,"context_line":"    def update_dns(self, context, network):"},{"line_number":1902,"context_line":"        \"\"\"Called when fiwed IP is allocated or deallocated\"\"\""},{"line_number":1903,"context_line":"        raise NotImplementedError()"},{"line_number":1904,"context_line":""},{"line_number":1905,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAMH%2F%2F7Zw%3D","line":1902,"updated":"2012-11-15 14:35:27.000000000","message":"s/fiwed/fixed/","commit_id":"f83323e1487433d0de43e2dc114d5b3012ce8b21"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ef27e233c121e4d1ec93309f9b063161eb6f6d86","unresolved":false,"context_lines":[{"line_number":2006,"context_line":"        pass"},{"line_number":2007,"context_line":""},{"line_number":2008,"context_line":"    def update_dns(self, context, network):"},{"line_number":2009,"context_line":"        \"\"\"Called when fiwed IP is allocated or deallocated\"\"\""},{"line_number":2010,"context_line":"        pass"},{"line_number":2011,"context_line":""},{"line_number":2012,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAMH%2F%2F7Zo%3D","line":2009,"updated":"2012-11-15 14:35:27.000000000","message":"same","commit_id":"f83323e1487433d0de43e2dc114d5b3012ce8b21"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ef27e233c121e4d1ec93309f9b063161eb6f6d86","unresolved":false,"context_lines":[{"line_number":2277,"context_line":"        return parent_reserved + CONF.cnt_vpn_clients"},{"line_number":2278,"context_line":""},{"line_number":2279,"context_line":"    def update_dns(self, context, network):"},{"line_number":2280,"context_line":"        \"\"\"Called when fiwed IP is allocated or deallocated\"\"\""},{"line_number":2281,"context_line":"        if not CONF.fake_network:"},{"line_number":2282,"context_line":"            host_networks \u003d self.db.network_get_all_by_host(context, self.host)"},{"line_number":2283,"context_line":"            for host_network in host_networks:"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAMH%2F%2F7Zk%3D","line":2280,"updated":"2012-11-15 14:35:27.000000000","message":"same","commit_id":"f83323e1487433d0de43e2dc114d5b3012ce8b21"},{"author":{"_account_id":67,"name":"Vish Ishaya","email":"vishvananda@gmail.com","username":"vishvananda"},"change_message_id":"26786398f5d399bd0254aece3302fabc4905a611","unresolved":false,"context_lines":[{"line_number":243,"context_line":"            # NOTE(vish): deallocate the fixed ip locally"},{"line_number":244,"context_line":"            super(RPCAllocateFixedIP, self).deallocate_fixed_ip(context,"},{"line_number":245,"context_line":"                    address)"},{"line_number":246,"context_line":"        elif network[\u0027multi_host\u0027]:"},{"line_number":247,"context_line":"            service \u003d self.db.service_get_by_host_and_topic(context,"},{"line_number":248,"context_line":"                                                            host,"},{"line_number":249,"context_line":"                                                            \u0027network\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAMH%2F%2F6gw%3D","line":246,"updated":"2012-11-15 23:40:28.000000000","message":"this logic doesn\u0027t seem correct. I think you want the fanout logic to be specifically in if host \u003d\u003d self.host, above. As in I\u0027ve just deallocated the ip, so now check if we are multi_host and do the fanout.","commit_id":"2886a048fd03e4de0cc7825f21fa7131c05c52b7"},{"author":{"_account_id":67,"name":"Vish Ishaya","email":"vishvananda@gmail.com","username":"vishvananda"},"change_message_id":"26786398f5d399bd0254aece3302fabc4905a611","unresolved":false,"context_lines":[{"line_number":256,"context_line":"            self.network_rpcapi._rpc_deallocate_fixed_ip(context,"},{"line_number":257,"context_line":"                                                         address, host)"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"        network_services \u003d self.db.service_get_all_by_topic(context, \u0027network\u0027)"},{"line_number":260,"context_line":"        for network_service in network_services:"},{"line_number":261,"context_line":"            if (network_service[\u0027host\u0027] !\u003d host and"},{"line_number":262,"context_line":"                utils.service_is_up(network_service)):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAMH%2F%2F6hQ%3D","line":259,"updated":"2012-11-15 23:40:28.000000000","message":"seems much better to use a fanout cast here and just let it happen in the background. is there a reason why wee need to wait for all of the dns to be updated before we continue?","commit_id":"2886a048fd03e4de0cc7825f21fa7131c05c52b7"},{"author":{"_account_id":67,"name":"Vish Ishaya","email":"vishvananda@gmail.com","username":"vishvananda"},"change_message_id":"26786398f5d399bd0254aece3302fabc4905a611","unresolved":false,"context_lines":[{"line_number":272,"context_line":"        # wait for all of the updates DNS (if any) to finish"},{"line_number":273,"context_line":"        green_pool.waitall()"},{"line_number":274,"context_line":""},{"line_number":275,"context_line":"    def _rpc_deallocate_fixed_ip(self, context, address, **kwargs):"},{"line_number":276,"context_line":"        \"\"\"Sits in between deallocate_fixed_ips and super class"},{"line_number":277,"context_line":"        deallocate_fixed_ip to perform network lookup on the far side of rpc."},{"line_number":278,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAMH%2F%2F6gg%3D","line":275,"updated":"2012-11-15 23:40:28.000000000","message":"I don\u0027t think this is necessary if you do it with a fanout as I suggest above.","commit_id":"2886a048fd03e4de0cc7825f21fa7131c05c52b7"},{"author":{"_account_id":67,"name":"Vish Ishaya","email":"vishvananda@gmail.com","username":"vishvananda"},"change_message_id":"26786398f5d399bd0254aece3302fabc4905a611","unresolved":false,"context_lines":[{"line_number":278,"context_line":"        \"\"\""},{"line_number":279,"context_line":"        super(RPCAllocateFixedIP, self).deallocate_fixed_ip(context, address)"},{"line_number":280,"context_line":""},{"line_number":281,"context_line":"    def _rpc_update_dns(self, context, network_id, **kwargs):"},{"line_number":282,"context_line":"        self.update_dns(context, self.db.network_get(context, network_id))"},{"line_number":283,"context_line":""},{"line_number":284,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAMH%2F%2F6gY%3D","line":281,"updated":"2012-11-15 23:40:28.000000000","message":"i think you could just call this update_dns via fanout and just skip this altogether.","commit_id":"2886a048fd03e4de0cc7825f21fa7131c05c52b7"},{"author":{"_account_id":67,"name":"Vish Ishaya","email":"vishvananda@gmail.com","username":"vishvananda"},"change_message_id":"e7a562e682aea6a96a348af11791a6cfb224dc79","unresolved":false,"context_lines":[{"line_number":1079,"context_line":"        self._allocate_fixed_ips(admin_context, instance_id,"},{"line_number":1080,"context_line":"                                 host, networks, vpn\u003dvpn,"},{"line_number":1081,"context_line":"                                 requested_networks\u003drequested_networks)"},{"line_number":1082,"context_line":"        # Update DNS entries"},{"line_number":1083,"context_line":"        elevated_context \u003d context.elevated()"},{"line_number":1084,"context_line":"        network_services \u003d self.db.service_get_all_by_topic(elevated_context,"},{"line_number":1085,"context_line":"                                                            \u0027network\u0027)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAMH%2F%2F25U%3D","line":1082,"updated":"2012-11-19 21:50:26.000000000","message":"i still think a fanout cast is much better here than looping through all nodes. Also, if you are not going to waitall() at the end, then there is no need to use a green_pool","commit_id":"44bfe358e71935b9371fade09330f684c721504b"},{"author":{"_account_id":67,"name":"Vish Ishaya","email":"vishvananda@gmail.com","username":"vishvananda"},"change_message_id":"e7a562e682aea6a96a348af11791a6cfb224dc79","unresolved":false,"context_lines":[{"line_number":1129,"context_line":"        for fixed_ip in fixed_ips:"},{"line_number":1130,"context_line":"            self.deallocate_fixed_ip(context, fixed_ip[\u0027address\u0027], host\u003dhost)"},{"line_number":1131,"context_line":""},{"line_number":1132,"context_line":"        # Update DNS entries"},{"line_number":1133,"context_line":"        elevated_context \u003d context.elevated()"},{"line_number":1134,"context_line":"        network_services \u003d self.db.service_get_all_by_topic(elevated_context,"},{"line_number":1135,"context_line":"                                                            \u0027network\u0027)"}],"source_content_type":"text/x-python","patch_set":9,"id":"AAAAMH%2F%2F25M%3D","line":1132,"updated":"2012-11-19 21:50:26.000000000","message":"ditto","commit_id":"44bfe358e71935b9371fade09330f684c721504b"}]}
