)]}'
{"etc/neutron/rootwrap.d/l3.filters":[{"author":{"_account_id":9531,"name":"liuyulong","display_name":"LIU Yulong","email":"i@liuyulong.me","username":"LIU-Yulong"},"change_message_id":"baaecfeb6fce6454a5755a351603181d3604d902","unresolved":false,"context_lines":[{"line_number":31,"context_line":"ip_exec: IpNetnsExecFilter, ip, root"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"# l3_tc_lib"},{"line_number":34,"context_line":"l3_tc_show_qdisc: RegExpFilter, tc, root, tc, qdisc, show, dev, .+"},{"line_number":35,"context_line":"l3_tc_add_qdisc_ingress: RegExpFilter, tc, root, tc, qdisc, add, dev, .+, ingress"},{"line_number":36,"context_line":"l3_tc_add_qdisc_egress: RegExpFilter, tc, root, tc, qdisc, add, dev, .+, root, handle, 1:, htb"},{"line_number":37,"context_line":"l3_tc_show_filters: RegExpFilter, tc, root, tc, -p, -s, -d, filter, show, dev, .+, parent, .+, prio, 1"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"9fb8cfa7_5885e0ab","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":66},"updated":"2019-07-01 13:58:27.000000000","message":"Here","commit_id":"694322bf56032eae2f1a317b774d9098dba69aa6"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"18f6472c33f9cde70a10c3a1f0f92029cac65389","unresolved":false,"context_lines":[{"line_number":31,"context_line":"ip_exec: IpNetnsExecFilter, ip, root"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"# l3_tc_lib"},{"line_number":34,"context_line":"l3_tc_show_qdisc: RegExpFilter, tc, root, tc, qdisc, show, dev, .+"},{"line_number":35,"context_line":"l3_tc_add_qdisc_ingress: RegExpFilter, tc, root, tc, qdisc, add, dev, .+, ingress"},{"line_number":36,"context_line":"l3_tc_add_qdisc_egress: RegExpFilter, tc, root, tc, qdisc, add, dev, .+, root, handle, 1:, htb"},{"line_number":37,"context_line":"l3_tc_show_filters: RegExpFilter, tc, root, tc, -p, -s, -d, filter, show, dev, .+, parent, .+, prio, 1"}],"source_content_type":"application/octet-stream","patch_set":2,"id":"9fb8cfa7_93281b33","line":34,"range":{"start_line":34,"start_character":0,"end_line":34,"end_character":66},"in_reply_to":"9fb8cfa7_5885e0ab","updated":"2019-07-01 14:19:58.000000000","message":"Right!","commit_id":"694322bf56032eae2f1a317b774d9098dba69aa6"}],"neutron/agent/linux/l3_tc_lib.py":[{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"af0815c9faac37f67dd255b7a847048243f03854","unresolved":false,"context_lines":[{"line_number":22,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"QDISC_IN_REGEX \u003d re.compile(r\"qdisc ingress (\\w+:) *\")"},{"line_number":25,"context_line":"QDISC_OUT_REGEX \u003d re.compile(r\"qdisc htb (\\w+:) *\")"},{"line_number":26,"context_line":"# NOTE(slaweq): in iproute 4.15 chain value was added to filter output and this"},{"line_number":27,"context_line":"# needs to be included in REGEX"},{"line_number":28,"context_line":"FILTER_ID_REGEX \u003d re.compile("}],"source_content_type":"text/x-python","patch_set":1,"id":"9fb8cfa7_9057b6ca","line":25,"updated":"2019-07-01 08:45:25.000000000","message":"those 2 regex can be now removed as are not used anywhere","commit_id":"8aa801ef27af79cfd54a49687062595f8d770d01"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"7cddb91f8ebe9a8943617dc821f3d2b7d772b878","unresolved":false,"context_lines":[{"line_number":22,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"QDISC_IN_REGEX \u003d re.compile(r\"qdisc ingress (\\w+:) *\")"},{"line_number":25,"context_line":"QDISC_OUT_REGEX \u003d re.compile(r\"qdisc htb (\\w+:) *\")"},{"line_number":26,"context_line":"# NOTE(slaweq): in iproute 4.15 chain value was added to filter output and this"},{"line_number":27,"context_line":"# needs to be included in REGEX"},{"line_number":28,"context_line":"FILTER_ID_REGEX \u003d re.compile("}],"source_content_type":"text/x-python","patch_set":1,"id":"9fb8cfa7_707a4224","line":25,"in_reply_to":"9fb8cfa7_9057b6ca","updated":"2019-07-01 08:56:33.000000000","message":"You are right!","commit_id":"8aa801ef27af79cfd54a49687062595f8d770d01"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"af0815c9faac37f67dd255b7a847048243f03854","unresolved":false,"context_lines":[{"line_number":44,"context_line":"                      else tc_lib.TC_QDISC_TYPE_INGRESS)"},{"line_number":45,"context_line":"        qdiscs \u003d [qd for qd in qdiscs if qd[\u0027qdisc_type\u0027] \u003d\u003d qdisc_type]"},{"line_number":46,"context_line":"        if qdiscs:"},{"line_number":47,"context_line":"            return qdiscs[0][\u0027handle\u0027]"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def _add_qdisc(self, direction):"},{"line_number":50,"context_line":"        if direction \u003d\u003d constants.EGRESS_DIRECTION:"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fb8cfa7_900c96ec","line":47,"updated":"2019-07-01 08:45:25.000000000","message":"just thinking, wouldn\u0027t be better something like:\n\n    for qd in qdiscs:\n        if qd[\u0027disc_type\u0027] \u003d\u003d qdisc_type:\n            return qd[\u0027handle\u0027]\n\n?","commit_id":"8aa801ef27af79cfd54a49687062595f8d770d01"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"7cddb91f8ebe9a8943617dc821f3d2b7d772b878","unresolved":false,"context_lines":[{"line_number":44,"context_line":"                      else tc_lib.TC_QDISC_TYPE_INGRESS)"},{"line_number":45,"context_line":"        qdiscs \u003d [qd for qd in qdiscs if qd[\u0027qdisc_type\u0027] \u003d\u003d qdisc_type]"},{"line_number":46,"context_line":"        if qdiscs:"},{"line_number":47,"context_line":"            return qdiscs[0][\u0027handle\u0027]"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"    def _add_qdisc(self, direction):"},{"line_number":50,"context_line":"        if direction \u003d\u003d constants.EGRESS_DIRECTION:"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fb8cfa7_10aae66f","line":47,"in_reply_to":"9fb8cfa7_900c96ec","updated":"2019-07-01 08:56:33.000000000","message":"Even better: use the generator in the \"if\" condition, to avoid building the list, because we don\u0027t need it.","commit_id":"8aa801ef27af79cfd54a49687062595f8d770d01"}]}
