)]}'
{"networking_sfc/cli/port_pair_group.py":[{"author":{"_account_id":11313,"name":"Louis Fourie","email":"fouriehl70@gmail.com","username":"lfourie"},"change_message_id":"dd94583d2ea56fc5d77854c1e42abc117f7ed985","unresolved":false,"context_lines":[{"line_number":90,"context_line":"        if parsed_args.port_pair_group_parameters:"},{"line_number":91,"context_line":"            body[\u0027port_pair_group_parameters\u0027] \u003d {}"},{"line_number":92,"context_line":"            for key, value in parsed_args.port_pair_group_parameters.items():"},{"line_number":93,"context_line":"                # Setup lb_fields parameters key and value(s)"},{"line_number":94,"context_line":"                if key \u003d\u003d \u0027lb_fields\u0027:"},{"line_number":95,"context_line":"                    body[\u0027port_pair_group_parameters\u0027][key] \u003d (["},{"line_number":96,"context_line":"                        field for field in value.split(\u0027\u0026\u0027) if field])"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_554c70c6","line":93,"range":{"start_line":93,"start_character":34,"end_line":93,"end_character":44},"updated":"2017-04-24 16:23:09.000000000","message":"remove \u0027parameters\u0027","commit_id":"afa9f8f1c232eb1a7825d95a704f3c8ca1888716"},{"author":{"_account_id":11313,"name":"Louis Fourie","email":"fouriehl70@gmail.com","username":"lfourie"},"change_message_id":"dd94583d2ea56fc5d77854c1e42abc117f7ed985","unresolved":false,"context_lines":[{"line_number":97,"context_line":"                # Setup ppg_n_tuple_mapping key(s) and value(s)"},{"line_number":98,"context_line":"                elif key \u003d\u003d \u0027ppg_n_tuple_mapping\u0027:"},{"line_number":99,"context_line":"                    # Reorganize ppg_n_tuple_mapping values in dict with"},{"line_number":100,"context_line":"                    # strurcture {\u0027ppg_n_tuple_mapping\u0027: \u0027ingress_n_tuple\u0027: {},"},{"line_number":101,"context_line":"                    # \u0027egress_n_tuple\u0027: {}}"},{"line_number":102,"context_line":"                    ppg_n_tuple_dict \u003d {}"},{"line_number":103,"context_line":"                    ingress_n_tuple_dict \u003d {}"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_f5825cc8","line":100,"range":{"start_line":100,"start_character":22,"end_line":100,"end_character":32},"updated":"2017-04-24 16:23:09.000000000","message":"structure","commit_id":"afa9f8f1c232eb1a7825d95a704f3c8ca1888716"},{"author":{"_account_id":23142,"name":"Freya Dian Yu","email":"freyadyu@gmail.com","username":"dianyu"},"change_message_id":"cba4784d9474937c924dbf432091011be3ebe6e9","unresolved":false,"context_lines":[{"line_number":97,"context_line":"                # Setup ppg_n_tuple_mapping key(s) and value(s)"},{"line_number":98,"context_line":"                elif key \u003d\u003d \u0027ppg_n_tuple_mapping\u0027:"},{"line_number":99,"context_line":"                    # Reorganize ppg_n_tuple_mapping values in dict with"},{"line_number":100,"context_line":"                    # strurcture {\u0027ppg_n_tuple_mapping\u0027: \u0027ingress_n_tuple\u0027: {},"},{"line_number":101,"context_line":"                    # \u0027egress_n_tuple\u0027: {}}"},{"line_number":102,"context_line":"                    ppg_n_tuple_dict \u003d {}"},{"line_number":103,"context_line":"                    ingress_n_tuple_dict \u003d {}"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_cc29e49b","line":100,"range":{"start_line":100,"start_character":22,"end_line":100,"end_character":32},"in_reply_to":"5ff73747_f5825cc8","updated":"2017-04-25 22:11:54.000000000","message":"Will update this and remove parameters above.","commit_id":"afa9f8f1c232eb1a7825d95a704f3c8ca1888716"}],"networking_sfc/extensions/sfc.py":[{"author":{"_account_id":11313,"name":"Louis Fourie","email":"fouriehl70@gmail.com","username":"lfourie"},"change_message_id":"dd94583d2ea56fc5d77854c1e42abc117f7ed985","unresolved":false,"context_lines":[{"line_number":186,"context_line":""},{"line_number":187,"context_line":"class PPGParametersInvalidNTupleMappingParameter(neutron_exc.InvalidInput):"},{"line_number":188,"context_line":"    message \u003d _("},{"line_number":189,"context_line":"        \"Invalid Port Pair Group N Tuple Mapping parameters: \""},{"line_number":190,"context_line":"        \"%%(error_message)s. Supported PPG classifier N Tuple Mapping \""},{"line_number":191,"context_line":"        \"parameters are %(supported_parameters)s.\""},{"line_number":192,"context_line":"    ) % {\u0027supported_parameters\u0027: SUPPORTED_PPG_TUPLE_MAPPING}"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_957af821","line":189,"range":{"start_line":189,"start_character":33,"end_line":189,"end_character":40},"updated":"2017-04-24 16:23:09.000000000","message":"N-tuple","commit_id":"afa9f8f1c232eb1a7825d95a704f3c8ca1888716"},{"author":{"_account_id":11313,"name":"Louis Fourie","email":"fouriehl70@gmail.com","username":"lfourie"},"change_message_id":"dd94583d2ea56fc5d77854c1e42abc117f7ed985","unresolved":false,"context_lines":[{"line_number":187,"context_line":"class PPGParametersInvalidNTupleMappingParameter(neutron_exc.InvalidInput):"},{"line_number":188,"context_line":"    message \u003d _("},{"line_number":189,"context_line":"        \"Invalid Port Pair Group N Tuple Mapping parameters: \""},{"line_number":190,"context_line":"        \"%%(error_message)s. Supported PPG classifier N Tuple Mapping \""},{"line_number":191,"context_line":"        \"parameters are %(supported_parameters)s.\""},{"line_number":192,"context_line":"    ) % {\u0027supported_parameters\u0027: SUPPORTED_PPG_TUPLE_MAPPING}"},{"line_number":193,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_55747035","line":190,"range":{"start_line":190,"start_character":54,"end_line":190,"end_character":62},"updated":"2017-04-24 16:23:09.000000000","message":"N-tuple","commit_id":"afa9f8f1c232eb1a7825d95a704f3c8ca1888716"},{"author":{"_account_id":11313,"name":"Louis Fourie","email":"fouriehl70@gmail.com","username":"lfourie"},"change_message_id":"dd94583d2ea56fc5d77854c1e42abc117f7ed985","unresolved":false,"context_lines":[{"line_number":225,"context_line":"            for n_key in value:"},{"line_number":226,"context_line":"                if n_key not in SUPPORTED_PPG_TUPLE_MAPPING:"},{"line_number":227,"context_line":"                    raise PPGParametersInvalidNTupleMappingParameter("},{"line_number":228,"context_line":"                        error_message\u003d\u0027Unknow key %s.\u0027 % key)"},{"line_number":229,"context_line":"    return parameters"},{"line_number":230,"context_line":""},{"line_number":231,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_f5b13ce3","line":228,"range":{"start_line":228,"start_character":39,"end_line":228,"end_character":45},"updated":"2017-04-24 16:23:09.000000000","message":"Unknown","commit_id":"afa9f8f1c232eb1a7825d95a704f3c8ca1888716"}],"networking_sfc/services/sfc/drivers/ovs/driver.py":[{"author":{"_account_id":11313,"name":"Louis Fourie","email":"fouriehl70@gmail.com","username":"lfourie"},"change_message_id":"dd94583d2ea56fc5d77854c1e42abc117f7ed985","unresolved":false,"context_lines":[{"line_number":518,"context_line":""},{"line_number":519,"context_line":"    # Function to update adjacent node ppg_n_tuple_mapping values if have"},{"line_number":520,"context_line":"    # ppg_n_tuple_mapping in path_nodes"},{"line_number":521,"context_line":"    def _update_ppg_n_tuple_in_flow_rule(self, path_nodes,"},{"line_number":522,"context_line":"                                         fwd_path, sf_path_length):"},{"line_number":523,"context_line":"        for index, node in enumerate(path_nodes):"},{"line_number":524,"context_line":"            if not node[\u0027ppg_n_tuple_mapping\u0027]:"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_351a047d","line":521,"range":{"start_line":521,"start_character":8,"end_line":521,"end_character":40},"updated":"2017-04-24 16:23:09.000000000","message":"Explain usage of curr_ppg_flag","commit_id":"afa9f8f1c232eb1a7825d95a704f3c8ca1888716"},{"author":{"_account_id":23142,"name":"Freya Dian Yu","email":"freyadyu@gmail.com","username":"dianyu"},"change_message_id":"cba4784d9474937c924dbf432091011be3ebe6e9","unresolved":false,"context_lines":[{"line_number":518,"context_line":""},{"line_number":519,"context_line":"    # Function to update adjacent node ppg_n_tuple_mapping values if have"},{"line_number":520,"context_line":"    # ppg_n_tuple_mapping in path_nodes"},{"line_number":521,"context_line":"    def _update_ppg_n_tuple_in_flow_rule(self, path_nodes,"},{"line_number":522,"context_line":"                                         fwd_path, sf_path_length):"},{"line_number":523,"context_line":"        for index, node in enumerate(path_nodes):"},{"line_number":524,"context_line":"            if not node[\u0027ppg_n_tuple_mapping\u0027]:"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_ef6db298","line":521,"range":{"start_line":521,"start_character":8,"end_line":521,"end_character":40},"in_reply_to":"5ff73747_351a047d","updated":"2017-04-25 22:11:54.000000000","message":"1: the current port_pair_group has ppg_n_tuple_mapping\n\n2: the current node\u0027s ppg_n_tuple_mapping inherits from previous node, and current node in forward chain; or current node\u0027s ppg_n_tuple_mapping inherits from previous node, and current node in reverse chain but previous node\u0027s ppg_n_tuple_mapping[curr_ppg_flag] !\u003d 1\n\n3: the current node\u0027s ppg_n_tuple_mapping inherits from previous node, and current node in reverse chain, and previous node\u0027s ppg_n_tuple_mapping[curr_ppg_flag] \u003d\u003d 1","commit_id":"afa9f8f1c232eb1a7825d95a704f3c8ca1888716"},{"author":{"_account_id":11313,"name":"Louis Fourie","email":"fouriehl70@gmail.com","username":"lfourie"},"change_message_id":"dd94583d2ea56fc5d77854c1e42abc117f7ed985","unresolved":false,"context_lines":[{"line_number":575,"context_line":"                                ppg_n_tuple_mapping.get(\u0027egress_n_tuple\u0027, None)"},{"line_number":576,"context_line":"                            ):"},{"line_number":577,"context_line":"                                if ("},{"line_number":578,"context_line":"                                    ppg_n_tuple_mapping[\u0027curr_ppg_flag\u0027] \u003d\u003d 1"},{"line_number":579,"context_line":"                                    and fwd_path is False"},{"line_number":580,"context_line":"                                ):"},{"line_number":581,"context_line":"                                    ppg_n_tuple_mapping[\u0027curr_ppg_flag\u0027] \u003d 3"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_f0082a29","line":578,"range":{"start_line":578,"start_character":57,"end_line":578,"end_character":70},"updated":"2017-04-24 16:23:09.000000000","message":"where is curr_ppg_flag set to 1?","commit_id":"afa9f8f1c232eb1a7825d95a704f3c8ca1888716"},{"author":{"_account_id":23142,"name":"Freya Dian Yu","email":"freyadyu@gmail.com","username":"dianyu"},"change_message_id":"cba4784d9474937c924dbf432091011be3ebe6e9","unresolved":false,"context_lines":[{"line_number":575,"context_line":"                                ppg_n_tuple_mapping.get(\u0027egress_n_tuple\u0027, None)"},{"line_number":576,"context_line":"                            ):"},{"line_number":577,"context_line":"                                if ("},{"line_number":578,"context_line":"                                    ppg_n_tuple_mapping[\u0027curr_ppg_flag\u0027] \u003d\u003d 1"},{"line_number":579,"context_line":"                                    and fwd_path is False"},{"line_number":580,"context_line":"                                ):"},{"line_number":581,"context_line":"                                    ppg_n_tuple_mapping[\u0027curr_ppg_flag\u0027] \u003d 3"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_6f22c2a6","line":578,"range":{"start_line":578,"start_character":57,"end_line":578,"end_character":70},"in_reply_to":"5ff73747_f0082a29","updated":"2017-04-25 22:11:54.000000000","message":"In _create_portchain_path function before creating sf_node args, which called this function.","commit_id":"afa9f8f1c232eb1a7825d95a704f3c8ca1888716"}]}
