)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"5e50461dcb789b5058c80c2c84dda01ada2b3b62","unresolved":true,"context_lines":[{"line_number":21,"context_line":"request group as with the new request format we allow more request"},{"line_number":22,"context_line":"groups per port in neutron."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"TODO:"},{"line_number":25,"context_line":"* make a decision if we need to support both format in Xena. If only the"},{"line_number":26,"context_line":"  new format is needed then this patch can be simplified a lot."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"blueprint: qos-minimum-guaranteed-packet-rate"},{"line_number":29,"context_line":"Change-Id: I1a295861d63779cd97a1dce4f9b5cfd8c5fd2e72"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"cf622b07_36a5a1d4","line":26,"range":{"start_line":24,"start_character":0,"end_line":26,"end_character":63},"updated":"2021-05-10 16:29:59.000000000","message":"Based on the PTG discussion we need to support both formats.","commit_id":"5f907d580dfea0fa33b0ae45a631ab6933edf7b7"}],"nova/compute/api.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"5ce07c3c605a094bf5e92d300e20cb833e3bd02c","unresolved":true,"context_lines":[{"line_number":5033,"context_line":"            # NOTE(gibi): Checking if the requested port has resource request"},{"line_number":5034,"context_line":"            # as such ports are only supported if the compute service version"},{"line_number":5035,"context_line":"            # is \u003e\u003d 55."},{"line_number":5036,"context_line":"            # TODO(gibi): Remove this check in X as there we can be sure"},{"line_number":5037,"context_line":"            # that all computes are new enough."},{"line_number":5038,"context_line":"            if port.get(constants.RESOURCE_REQUEST):"},{"line_number":5039,"context_line":"                svc \u003d objects.Service.get_by_host_and_binary("}],"source_content_type":"text/x-python","patch_set":13,"id":"c03333df_5af745c6","line":5036,"updated":"2021-06-25 16:06:59.000000000","message":"Lets do it before the pps feature so we can avoid adapting it to the new resource request format.","commit_id":"a357700c30da2705ccc74bcd08bf3b2af0539c19"}],"nova/network/neutron.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"5e50461dcb789b5058c80c2c84dda01ada2b3b62","unresolved":true,"context_lines":[{"line_number":2146,"context_line":"                if self._has_extended_resource_request_extension("},{"line_number":2147,"context_line":"                        context, neutron):"},{"line_number":2148,"context_line":"                    # need to handle the new resource request format"},{"line_number":2149,"context_line":"                    resource_requests.extend("},{"line_number":2150,"context_line":"                        objects.RequestGroup.from_extended_port_request("},{"line_number":2151,"context_line":"                            context\u003dNone,"},{"line_number":2152,"context_line":"                            port_uuid\u003drequest_net.port_id,"}],"source_content_type":"text/x-python","patch_set":1,"id":"cd236840_8e239968","line":2149,"updated":"2021-05-10 16:29:59.000000000","message":"This will not work as neutron will pass same_subtree in the port as well which needs to end up in the RequestSpec.request_level_params field. So either we need to handle that separately from this flow, or we need to pass along either RequestLevelParams object or the RequestSpec itself.","commit_id":"5f907d580dfea0fa33b0ae45a631ab6933edf7b7"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"ad096381c84161eea70d66686dd0037acce74140","unresolved":true,"context_lines":[{"line_number":2146,"context_line":"                if self._has_extended_resource_request_extension("},{"line_number":2147,"context_line":"                        context, neutron):"},{"line_number":2148,"context_line":"                    # need to handle the new resource request format"},{"line_number":2149,"context_line":"                    resource_requests.extend("},{"line_number":2150,"context_line":"                        objects.RequestGroup.from_extended_port_request("},{"line_number":2151,"context_line":"                            context\u003dNone,"},{"line_number":2152,"context_line":"                            port_uuid\u003drequest_net.port_id,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ce59590c_6454709e","line":2149,"in_reply_to":"cd236840_8e239968","updated":"2021-05-19 13:04:04.000000000","message":"I went with the passing-a-RequestLevelParams-along idea.","commit_id":"5f907d580dfea0fa33b0ae45a631ab6933edf7b7"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"5e50461dcb789b5058c80c2c84dda01ada2b3b62","unresolved":true,"context_lines":[{"line_number":2390,"context_line":"        for port in data.get(\u0027ports\u0027, []):"},{"line_number":2391,"context_line":"            if extended_rr:"},{"line_number":2392,"context_line":"                # need to handle the new resource request format"},{"line_number":2393,"context_line":"                resource_requests.extend("},{"line_number":2394,"context_line":"                    objects.RequestGroup.from_extended_port_request("},{"line_number":2395,"context_line":"                        context\u003dNone,"},{"line_number":2396,"context_line":"                        port_uuid\u003dport[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":1,"id":"3cc56793_e0372bb3","line":2393,"updated":"2021-05-10 16:29:59.000000000","message":"ditto\n\nbtw, this and the create_resource_request codepath seems pretty similar","commit_id":"5f907d580dfea0fa33b0ae45a631ab6933edf7b7"}],"nova/objects/request_spec.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"5e50461dcb789b5058c80c2c84dda01ada2b3b62","unresolved":true,"context_lines":[{"line_number":1177,"context_line":"        return obj"},{"line_number":1178,"context_line":""},{"line_number":1179,"context_line":"    @classmethod"},{"line_number":1180,"context_line":"    def from_extended_port_request("},{"line_number":1181,"context_line":"            cls, context, port_uuid, port_resource_request):"},{"line_number":1182,"context_line":"        \"\"\"Create the group objects from the resource request of a neutron port"},{"line_number":1183,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"d6ecc6e9_af7ed90b","line":1180,"updated":"2021-05-10 16:29:59.000000000","message":"As same_subtree needs to be handled per port but it is not par of either of the groups. So we need to move this logic to the RequestSpec to populate the RequestLevelParam object directly.","commit_id":"5f907d580dfea0fa33b0ae45a631ab6933edf7b7"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"5e50461dcb789b5058c80c2c84dda01ada2b3b62","unresolved":true,"context_lines":[{"line_number":1208,"context_line":"                        },"},{"line_number":1209,"context_line":"                    }"},{"line_number":1210,"context_line":"                ]"},{"line_number":1211,"context_line":"            }"},{"line_number":1212,"context_line":"        \"\"\""},{"line_number":1213,"context_line":"        group_objs \u003d []"},{"line_number":1214,"context_line":"        for group in port_resource_request.get(\"request_groups\", []):"}],"source_content_type":"text/x-python","patch_set":1,"id":"db54315c_d2fb8af9","line":1211,"updated":"2021-05-10 16:29:59.000000000","message":"add same_subtree handling","commit_id":"5f907d580dfea0fa33b0ae45a631ab6933edf7b7"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"83fd01bd9d14b54d2d1a190eda874444e7d0fa75","unresolved":true,"context_lines":[{"line_number":1217,"context_line":"                            \"NET_BW_EGR_KILOBIT_PER_SEC\": 1000,"},{"line_number":1218,"context_line":"                        },"},{"line_number":1219,"context_line":"                    }"},{"line_number":1220,"context_line":"                ]"},{"line_number":1221,"context_line":"            }"},{"line_number":1222,"context_line":"        \"\"\""},{"line_number":1223,"context_line":"        group_objs \u003d []"}],"source_content_type":"text/x-python","patch_set":13,"id":"522aaf70_28c7813c","line":1220,"updated":"2021-06-25 13:22:51.000000000","message":"add same_subtree here to complete the example, but note that it is not used by the RequestGroup object, it is handled by the RequestLevelParams object separately.","commit_id":"a357700c30da2705ccc74bcd08bf3b2af0539c19"}],"nova/tests/fixtures.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"5e50461dcb789b5058c80c2c84dda01ada2b3b62","unresolved":true,"context_lines":[{"line_number":2167,"context_line":"            groups.append(old_rr)"},{"line_number":2168,"context_line":""},{"line_number":2169,"context_line":"        new_rr \u003d {"},{"line_number":2170,"context_line":"            \"request_groups\": groups"},{"line_number":2171,"context_line":"        }"},{"line_number":2172,"context_line":"        port[\u0027resource_request\u0027] \u003d new_rr"},{"line_number":2173,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"f5de193b_e4b987d0","line":2170,"updated":"2021-05-10 16:29:59.000000000","message":"add the same_subtree top level key as that is also added by Neutron","commit_id":"5f907d580dfea0fa33b0ae45a631ab6933edf7b7"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"ad096381c84161eea70d66686dd0037acce74140","unresolved":false,"context_lines":[{"line_number":2167,"context_line":"            groups.append(old_rr)"},{"line_number":2168,"context_line":""},{"line_number":2169,"context_line":"        new_rr \u003d {"},{"line_number":2170,"context_line":"            \"request_groups\": groups"},{"line_number":2171,"context_line":"        }"},{"line_number":2172,"context_line":"        port[\u0027resource_request\u0027] \u003d new_rr"},{"line_number":2173,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"e5b001ce_0b16cc2f","line":2170,"in_reply_to":"f5de193b_e4b987d0","updated":"2021-05-19 13:04:04.000000000","message":"Done","commit_id":"5f907d580dfea0fa33b0ae45a631ab6933edf7b7"}]}
