)]}'
{"nova/network/neutronv2/api.py":[{"author":{"_account_id":10439,"name":"Xi Yang","email":"yang.xi@99cloud.net","username":"phenom"},"change_message_id":"fb7e89dc8f6b1da2eda1c99de55459ed7d4a23e3","unresolved":false,"context_lines":[{"line_number":1027,"context_line":"                       \" failure: %(exception)s\")"},{"line_number":1028,"context_line":"                LOG.debug(msg, {\u0027portid\u0027: p[\u0027id\u0027], \u0027exception\u0027: ex},"},{"line_number":1029,"context_line":"                          instance\u003dinstance)"},{"line_number":1030,"context_line":"            fip \u003d self._get_floating_ips_by_fixed_and_port("},{"line_number":1031,"context_line":"                neutron, address, p[\u0027id\u0027])[0]"},{"line_number":1032,"context_line":"            neutron.update_floatingip(fip[\u0027id\u0027],"},{"line_number":1033,"context_line":"                                      {\u0027floatingip\u0027: {\u0027port_id\u0027: None}})"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_70ebaf13","line":1030,"updated":"2015-12-14 14:01:14.000000000","message":"The var name \u0027fip\u0027 is confusing. Better to change it.","commit_id":"b2bfe2dbdfd87e15004e183c540e4a999e2e55c9"},{"author":{"_account_id":18785,"name":"Bo Chi","email":"bochi@tethrnet.com","username":"bochi"},"change_message_id":"cb4f48dd2fdb148da1e85167c1cae257dba62cbb","unresolved":false,"context_lines":[{"line_number":1027,"context_line":"                       \" failure: %(exception)s\")"},{"line_number":1028,"context_line":"                LOG.debug(msg, {\u0027portid\u0027: p[\u0027id\u0027], \u0027exception\u0027: ex},"},{"line_number":1029,"context_line":"                          instance\u003dinstance)"},{"line_number":1030,"context_line":"            fip \u003d self._get_floating_ips_by_fixed_and_port("},{"line_number":1031,"context_line":"                neutron, address, p[\u0027id\u0027])[0]"},{"line_number":1032,"context_line":"            neutron.update_floatingip(fip[\u0027id\u0027],"},{"line_number":1033,"context_line":"                                      {\u0027floatingip\u0027: {\u0027port_id\u0027: None}})"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a710552_b3dd6572","line":1030,"in_reply_to":"7a740942_70ebaf13","updated":"2015-12-15 07:20:41.000000000","message":"Done","commit_id":"b2bfe2dbdfd87e15004e183c540e4a999e2e55c9"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"928794cb00c70684ef152030695ffdc420c0dea6","unresolved":false,"context_lines":[{"line_number":1028,"context_line":"                LOG.debug(msg, {\u0027portid\u0027: p[\u0027id\u0027], \u0027exception\u0027: ex},"},{"line_number":1029,"context_line":"                          instance\u003dinstance)"},{"line_number":1030,"context_line":"            fip \u003d self._get_floating_ips_by_fixed_and_port("},{"line_number":1031,"context_line":"                neutron, address, p[\u0027id\u0027])[0]"},{"line_number":1032,"context_line":"            neutron.update_floatingip(fip[\u0027id\u0027],"},{"line_number":1033,"context_line":"                                      {\u0027floatingip\u0027: {\u0027port_id\u0027: None}})"},{"line_number":1034,"context_line":"            return self._get_instance_nw_info(context, instance)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a740942_94564828","line":1031,"range":{"start_line":1031,"start_character":43,"end_line":1031,"end_character":44},"updated":"2015-12-14 15:56:19.000000000","message":"I\u0027m not an expert in this area but, are we sure that neutron returns one and only one floating ip here?","commit_id":"b2bfe2dbdfd87e15004e183c540e4a999e2e55c9"},{"author":{"_account_id":18785,"name":"Bo Chi","email":"bochi@tethrnet.com","username":"bochi"},"change_message_id":"cb4f48dd2fdb148da1e85167c1cae257dba62cbb","unresolved":false,"context_lines":[{"line_number":1028,"context_line":"                LOG.debug(msg, {\u0027portid\u0027: p[\u0027id\u0027], \u0027exception\u0027: ex},"},{"line_number":1029,"context_line":"                          instance\u003dinstance)"},{"line_number":1030,"context_line":"            fip \u003d self._get_floating_ips_by_fixed_and_port("},{"line_number":1031,"context_line":"                neutron, address, p[\u0027id\u0027])[0]"},{"line_number":1032,"context_line":"            neutron.update_floatingip(fip[\u0027id\u0027],"},{"line_number":1033,"context_line":"                                      {\u0027floatingip\u0027: {\u0027port_id\u0027: None}})"},{"line_number":1034,"context_line":"            return self._get_instance_nw_info(context, instance)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a710552_f3c9adad","line":1031,"in_reply_to":"7a740942_94564828","updated":"2015-12-15 07:20:41.000000000","message":"there\u0027ll be only one floating ip with same port_id and fixed_ip, I will change this line to a for loop to handle the case _get_floating_ips return empty list.","commit_id":"b2bfe2dbdfd87e15004e183c540e4a999e2e55c9"}],"nova/tests/unit/network/test_neutronv2.py":[{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"32c100aca16b6247b63ea42e44a87010d81bd0e9","unresolved":false,"context_lines":[{"line_number":2331,"context_line":"        port[\u0027fixed_ips\u0027] \u003d []"},{"line_number":2332,"context_line":"        self.moxed_client.update_port(\u0027my_portid1\u0027,"},{"line_number":2333,"context_line":"            MyComparator(port_req_body)).AndReturn({\u0027port\u0027: port})"},{"line_number":2334,"context_line":"        self.moxed_client.list_floatingips("},{"line_number":2335,"context_line":"            fixed_ip_address\u003daddress, port_id\u003d\u0027my_portid1\u0027).AndReturn("},{"line_number":2336,"context_line":"                {\u0027floatingips\u0027: [{\u0027id\u0027: \u0027my_fipid1\u0027}]})"},{"line_number":2337,"context_line":"        self.moxed_client.update_floatingip("},{"line_number":2338,"context_line":"            \u0027my_fipid1\u0027, {\u0027floatingip\u0027: {\u0027port_id\u0027: None}}).AndReturn(None)"},{"line_number":2339,"context_line":""},{"line_number":2340,"context_line":"        self.mox.ReplayAll()"},{"line_number":2341,"context_line":"        api.remove_fixed_ip_from_instance(self.context, instance,"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa69d971_51a2789a","line":2338,"range":{"start_line":2334,"start_character":0,"end_line":2338,"end_character":75},"updated":"2016-01-11 02:48:10.000000000","message":"The code looks good to me, but for UT, we should use mock instead of mox in Nova now.","commit_id":"74ad00c334af6222b539707e62edd6cf2b60c09b"}]}
