)]}'
{"octavia/api/v2/controllers/load_balancer.py":[{"author":{"_account_id":10850,"name":"German Eichberger","email":"german.eichberger@gmail.com","username":"german"},"change_message_id":"27560e4c720f815ac7ff7d4f67a9961554bb6176","unresolved":false,"context_lines":[{"line_number":214,"context_line":"            db_lb \u003d self.repositories.create_load_balancer_and_vip("},{"line_number":215,"context_line":"                lock_session, lb_dict, vip_dict)"},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"            # create vip port if not exist"},{"line_number":218,"context_line":"            vip \u003d self._create_vip_port_if_not_exist(db_lb)"},{"line_number":219,"context_line":"            db_lb.vip.ip_address \u003d vip.ip_address"},{"line_number":220,"context_line":"            db_lb.vip.port_id \u003d vip.port_id"}],"source_content_type":"text/x-python","patch_set":8,"id":"bf3e73b7_616340de","line":217,"updated":"2017-08-07 16:05:14.000000000","message":"We already return a 201 (ACCEPTED) so why do we beed to create the VIP port on the api server and not in the worker?","commit_id":"e797e8763fdfca767bb808dfa1558eed55f38fe9"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"7e3b561572bd88c87676aca375854a01e69fb213","unresolved":false,"context_lines":[{"line_number":219,"context_line":"            db_lb.vip.ip_address \u003d vip.ip_address"},{"line_number":220,"context_line":"            db_lb.vip.port_id \u003d vip.port_id"},{"line_number":221,"context_line":"            db_lb.vip.network_id \u003d vip.network_id"},{"line_number":222,"context_line":"            db_lb.vip.subnet_id \u003d vip.subnet_id"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"            if listeners or pools:"},{"line_number":225,"context_line":"                db_pools, db_lists \u003d self._graph_create("}],"source_content_type":"text/x-python","patch_set":8,"id":"9f436f4f_7889d524","line":222,"updated":"2017-08-08 03:46:27.000000000","message":"Setting these things on \"db_lb.vip\" doesn\u0027t actually save it back to the DB... So, this leads to creating a vip here, orphaning it, then creating it as usual on the backend side. :(","commit_id":"e797e8763fdfca767bb808dfa1558eed55f38fe9"}],"octavia/network/drivers/neutron/allowed_address_pairs.py":[{"author":{"_account_id":6579,"name":"Nir Magnezi","email":"nmagnezi@redhat.com","username":"nmagnezi"},"change_message_id":"9216ba359cffce94cd2d7109e748e08ed57578d7","unresolved":false,"context_lines":[{"line_number":336,"context_line":"        if load_balancer.vip.port_id:"},{"line_number":337,"context_line":"            LOG.info(\u0027Port %s already exists. Update the device owner.\u0027,"},{"line_number":338,"context_line":"                     load_balancer.vip.port_id)"},{"line_number":339,"context_line":"            # Need to update device owner and id"},{"line_number":340,"context_line":"            port \u003d self.neutron_client.update_port("},{"line_number":341,"context_line":"                load_balancer.vip.port_id,"},{"line_number":342,"context_line":"                {\u0027port\u0027: port_body})"}],"source_content_type":"text/x-python","patch_set":3,"id":"1f013ff3_b39ac3c2","line":339,"range":{"start_line":339,"start_character":42,"end_line":339,"end_character":48},"updated":"2017-05-14 11:09:07.000000000","message":"The id is not being updated.","commit_id":"dff609874099117316118d9ea5bfe96ec4deb05a"},{"author":{"_account_id":21950,"name":"cheng","email":"tangch318@gmail.com","username":"cheng"},"change_message_id":"55300f62dbf55643a3fc3841d05824cdbeb651f6","unresolved":false,"context_lines":[{"line_number":336,"context_line":"        if load_balancer.vip.port_id:"},{"line_number":337,"context_line":"            LOG.info(\u0027Port %s already exists. Update the device owner.\u0027,"},{"line_number":338,"context_line":"                     load_balancer.vip.port_id)"},{"line_number":339,"context_line":"            # Need to update device owner and id"},{"line_number":340,"context_line":"            port \u003d self.neutron_client.update_port("},{"line_number":341,"context_line":"                load_balancer.vip.port_id,"},{"line_number":342,"context_line":"                {\u0027port\u0027: port_body})"}],"source_content_type":"text/x-python","patch_set":3,"id":"1f013ff3_fce373a3","line":339,"range":{"start_line":339,"start_character":42,"end_line":339,"end_character":48},"in_reply_to":"1f013ff3_b39ac3c2","updated":"2017-05-15 07:48:26.000000000","message":"device id.","commit_id":"dff609874099117316118d9ea5bfe96ec4deb05a"},{"author":{"_account_id":6579,"name":"Nir Magnezi","email":"nmagnezi@redhat.com","username":"nmagnezi"},"change_message_id":"9216ba359cffce94cd2d7109e748e08ed57578d7","unresolved":false,"context_lines":[{"line_number":340,"context_line":"            port \u003d self.neutron_client.update_port("},{"line_number":341,"context_line":"                load_balancer.vip.port_id,"},{"line_number":342,"context_line":"                {\u0027port\u0027: port_body})"},{"line_number":343,"context_line":"            port \u003d utils.convert_port_dict_to_model(port)"},{"line_number":344,"context_line":"            return self._port_to_vip(port, load_balancer)"},{"line_number":345,"context_line":""},{"line_number":346,"context_line":"        # It can be assumed that network_id exists"}],"source_content_type":"text/x-python","patch_set":3,"id":"1f013ff3_939fc7b3","line":343,"range":{"start_line":343,"start_character":12,"end_line":343,"end_character":57},"updated":"2017-05-14 11:09:07.000000000","message":"is this really needed?\nI see that before this change _port_to_vip() was able to deal with port dict","commit_id":"dff609874099117316118d9ea5bfe96ec4deb05a"},{"author":{"_account_id":21950,"name":"cheng","email":"tangch318@gmail.com","username":"cheng"},"change_message_id":"55300f62dbf55643a3fc3841d05824cdbeb651f6","unresolved":false,"context_lines":[{"line_number":340,"context_line":"            port \u003d self.neutron_client.update_port("},{"line_number":341,"context_line":"                load_balancer.vip.port_id,"},{"line_number":342,"context_line":"                {\u0027port\u0027: port_body})"},{"line_number":343,"context_line":"            port \u003d utils.convert_port_dict_to_model(port)"},{"line_number":344,"context_line":"            return self._port_to_vip(port, load_balancer)"},{"line_number":345,"context_line":""},{"line_number":346,"context_line":"        # It can be assumed that network_id exists"}],"source_content_type":"text/x-python","patch_set":3,"id":"1f013ff3_3cdafbe8","line":343,"range":{"start_line":343,"start_character":12,"end_line":343,"end_character":57},"in_reply_to":"1f013ff3_939fc7b3","updated":"2017-05-15 07:48:26.000000000","message":"yes, _port_to_vip can\u0027t process port dict, if use port.subnet to access dict and will raise \"dict object has no attribute subnet.\"","commit_id":"dff609874099117316118d9ea5bfe96ec4deb05a"}]}
