)]}'
{"neutron/db/l3_db.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"ef7f3adf929df9f5904ea741b18500b0cf348931","unresolved":true,"context_lines":[{"line_number":1552,"context_line":"            floating_ip_address \u003d floating_fixed_ip[\u0027ip_address\u0027]"},{"line_number":1553,"context_line":"            qos_policy_id \u003d (fip.get(qos_const.QOS_POLICY_ID)"},{"line_number":1554,"context_line":"                             if self._is_fip_qos_supported else None)"},{"line_number":1555,"context_line":"            if qos_policy_id:"},{"line_number":1556,"context_line":"                policy_obj.QosPolicy.get_policy_obj(context, qos_policy_id)"},{"line_number":1557,"context_line":""},{"line_number":1558,"context_line":"            # TODO(ralonsoh): \"tenant_id\" reference should be removed in G+2"},{"line_number":1559,"context_line":"            if fip.get(\u0027tenant_id\u0027) and fip.get(\u0027project_id\u0027) is None:"},{"line_number":1560,"context_line":"                fip[\u0027project_id\u0027] \u003d fip[\u0027tenant_id\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"da2f990d_d5e795a4","line":1557,"range":{"start_line":1555,"start_character":12,"end_line":1557,"end_character":1},"updated":"2026-08-24 11:12:18.000000000","message":"Why no doing that before creating the port? For example, after L1510 (`raise n_exc.BadRequest(resource\u003d\u0027floatingip\u0027, msg\u003dmsg`). We do checks there before start modifying anything.\n\nThe exception should be captured in order to raise a `HTTPNotFound` with the correct information (QoS ID not found).","commit_id":"8ef7631d4010c3b42a47b3509a8f8017fa7c0ba6"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"60112ed0e16d0db797fc706df8ab2580180cfb1c","unresolved":false,"context_lines":[{"line_number":1552,"context_line":"            floating_ip_address \u003d floating_fixed_ip[\u0027ip_address\u0027]"},{"line_number":1553,"context_line":"            qos_policy_id \u003d (fip.get(qos_const.QOS_POLICY_ID)"},{"line_number":1554,"context_line":"                             if self._is_fip_qos_supported else None)"},{"line_number":1555,"context_line":"            if qos_policy_id:"},{"line_number":1556,"context_line":"                policy_obj.QosPolicy.get_policy_obj(context, qos_policy_id)"},{"line_number":1557,"context_line":""},{"line_number":1558,"context_line":"            # TODO(ralonsoh): \"tenant_id\" reference should be removed in G+2"},{"line_number":1559,"context_line":"            if fip.get(\u0027tenant_id\u0027) and fip.get(\u0027project_id\u0027) is None:"},{"line_number":1560,"context_line":"                fip[\u0027project_id\u0027] \u003d fip[\u0027tenant_id\u0027]"}],"source_content_type":"text/x-python","patch_set":1,"id":"e9ac516f_b3cd2226","line":1557,"range":{"start_line":1555,"start_character":12,"end_line":1557,"end_character":1},"in_reply_to":"da2f990d_d5e795a4","updated":"2026-08-26 16:12:56.000000000","message":"sounds good, I moved up the check, the get_policy_obj raises QosPolicyNotFound so no need to raise not found explicitly.","commit_id":"8ef7631d4010c3b42a47b3509a8f8017fa7c0ba6"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"ef7f3adf929df9f5904ea741b18500b0cf348931","unresolved":true,"context_lines":[{"line_number":1642,"context_line":"            assoc_result \u003d self._update_fip_assoc(context, fip, floatingip_obj)"},{"line_number":1643,"context_line":"            if self._is_fip_qos_supported and \u0027qos_policy_id\u0027 in fip:"},{"line_number":1644,"context_line":"                policy_id \u003d fip.get(qos_const.QOS_POLICY_ID)"},{"line_number":1645,"context_line":"                if policy_id:"},{"line_number":1646,"context_line":"                    policy_obj.QosPolicy.get_policy_obj(context, policy_id)"},{"line_number":1647,"context_line":"                floatingip_obj.qos_policy_id \u003d policy_id"},{"line_number":1648,"context_line":""},{"line_number":1649,"context_line":"            floatingip_obj.update()"},{"line_number":1650,"context_line":"            floatingip_dict \u003d self._make_floatingip_dict(floatingip_obj)"},{"line_number":1651,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"40de7250_04527d1e","line":1648,"range":{"start_line":1645,"start_character":15,"end_line":1648,"end_character":1},"updated":"2026-08-24 11:12:18.000000000","message":"same comment here: before starting the context, we should check the QoS presence and raise the correct http 4xx code","commit_id":"8ef7631d4010c3b42a47b3509a8f8017fa7c0ba6"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"60112ed0e16d0db797fc706df8ab2580180cfb1c","unresolved":false,"context_lines":[{"line_number":1642,"context_line":"            assoc_result \u003d self._update_fip_assoc(context, fip, floatingip_obj)"},{"line_number":1643,"context_line":"            if self._is_fip_qos_supported and \u0027qos_policy_id\u0027 in fip:"},{"line_number":1644,"context_line":"                policy_id \u003d fip.get(qos_const.QOS_POLICY_ID)"},{"line_number":1645,"context_line":"                if policy_id:"},{"line_number":1646,"context_line":"                    policy_obj.QosPolicy.get_policy_obj(context, policy_id)"},{"line_number":1647,"context_line":"                floatingip_obj.qos_policy_id \u003d policy_id"},{"line_number":1648,"context_line":""},{"line_number":1649,"context_line":"            floatingip_obj.update()"},{"line_number":1650,"context_line":"            floatingip_dict \u003d self._make_floatingip_dict(floatingip_obj)"},{"line_number":1651,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"2092ed71_20704d4f","line":1648,"range":{"start_line":1645,"start_character":15,"end_line":1648,"end_character":1},"in_reply_to":"40de7250_04527d1e","updated":"2026-08-26 16:12:56.000000000","message":"thanks, done the same as for create","commit_id":"8ef7631d4010c3b42a47b3509a8f8017fa7c0ba6"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"a999d27cb794f388d4c5d4efdbdd4908b076ef55","unresolved":true,"context_lines":[{"line_number":1639,"context_line":"        dns_data \u003d None"},{"line_number":1640,"context_line":"        fip \u003d floatingip[\u0027floatingip\u0027]"},{"line_number":1641,"context_line":""},{"line_number":1642,"context_line":"        if self._is_fip_qos_supported and \u0027qos_policy_id\u0027 in fip:"},{"line_number":1643,"context_line":"            policy_id \u003d fip.get(qos_const.QOS_POLICY_ID)"},{"line_number":1644,"context_line":"            if policy_id:"},{"line_number":1645,"context_line":"                # get_policy_obj raises QosPolicyNotFound if the"}],"source_content_type":"text/x-python","patch_set":2,"id":"d5aa4e79_7674d2ad","line":1642,"range":{"start_line":1642,"start_character":42,"end_line":1642,"end_character":57},"updated":"2026-08-26 20:48:24.000000000","message":"Technically this could use the constant.\n\nAlso, as a meta-comment, is there a reason this code and that in create() above can\u0027t be identical?","commit_id":"833af2dc9dba95cc10c155c6a153283cfe7eef72"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"1aee3138a628077c9a08936b5680ead650c5e00f","unresolved":false,"context_lines":[{"line_number":1639,"context_line":"        dns_data \u003d None"},{"line_number":1640,"context_line":"        fip \u003d floatingip[\u0027floatingip\u0027]"},{"line_number":1641,"context_line":""},{"line_number":1642,"context_line":"        if self._is_fip_qos_supported and \u0027qos_policy_id\u0027 in fip:"},{"line_number":1643,"context_line":"            policy_id \u003d fip.get(qos_const.QOS_POLICY_ID)"},{"line_number":1644,"context_line":"            if policy_id:"},{"line_number":1645,"context_line":"                # get_policy_obj raises QosPolicyNotFound if the"}],"source_content_type":"text/x-python","patch_set":2,"id":"5af0d02d_16af3f61","line":1642,"range":{"start_line":1642,"start_character":42,"end_line":1642,"end_character":57},"in_reply_to":"d5aa4e79_7674d2ad","updated":"2026-08-27 08:50:17.000000000","message":"during update None can be set.","commit_id":"833af2dc9dba95cc10c155c6a153283cfe7eef72"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"a999d27cb794f388d4c5d4efdbdd4908b076ef55","unresolved":true,"context_lines":[{"line_number":1653,"context_line":"            assoc_result \u003d self._update_fip_assoc(context, fip, floatingip_obj)"},{"line_number":1654,"context_line":"            if self._is_fip_qos_supported and \u0027qos_policy_id\u0027 in fip:"},{"line_number":1655,"context_line":"                floatingip_obj.qos_policy_id \u003d fip.get("},{"line_number":1656,"context_line":"                    qos_const.QOS_POLICY_ID)"},{"line_number":1657,"context_line":""},{"line_number":1658,"context_line":"            floatingip_obj.update()"},{"line_number":1659,"context_line":"            floatingip_dict \u003d self._make_floatingip_dict(floatingip_obj)"}],"source_content_type":"text/x-python","patch_set":2,"id":"07e1807c_45930db9","line":1656,"updated":"2026-08-26 20:48:24.000000000","message":"We loaded this value on L1643 above, can we re-use it here?","commit_id":"833af2dc9dba95cc10c155c6a153283cfe7eef72"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"1aee3138a628077c9a08936b5680ead650c5e00f","unresolved":false,"context_lines":[{"line_number":1653,"context_line":"            assoc_result \u003d self._update_fip_assoc(context, fip, floatingip_obj)"},{"line_number":1654,"context_line":"            if self._is_fip_qos_supported and \u0027qos_policy_id\u0027 in fip:"},{"line_number":1655,"context_line":"                floatingip_obj.qos_policy_id \u003d fip.get("},{"line_number":1656,"context_line":"                    qos_const.QOS_POLICY_ID)"},{"line_number":1657,"context_line":""},{"line_number":1658,"context_line":"            floatingip_obj.update()"},{"line_number":1659,"context_line":"            floatingip_dict \u003d self._make_floatingip_dict(floatingip_obj)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ea62dfb6_bdfaa479","line":1656,"in_reply_to":"07e1807c_45930db9","updated":"2026-08-27 08:50:17.000000000","message":"yes, it can be reused","commit_id":"833af2dc9dba95cc10c155c6a153283cfe7eef72"}]}
