)]}'
{"neutron_taas/db/taas_db.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"86d8a3a82d0e30d641a0f9a962402ae72788bd11","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from oslo_log import helpers as log_helpers"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from neutron.db.models import segment"},{"line_number":20,"context_line":"from neutron.objects import network as network_obj"},{"line_number":21,"context_line":"from neutron_lib import constants"},{"line_number":22,"context_line":"from neutron_lib.db import api as db_api"}],"source_content_type":"text/x-python","patch_set":3,"id":"17b6a508_13367999","line":19,"updated":"2026-07-29 09:59:05.000000000","message":"pep8: F401 \u0027neutron.db.models.segment\u0027 imported but unused","commit_id":"a24078aa98137f7612b2df7bc9bffc4e509d0179"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"86d8a3a82d0e30d641a0f9a962402ae72788bd11","unresolved":false,"context_lines":[{"line_number":28,"context_line":"from oslo_utils import uuidutils"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"from neutron_taas.objects import taas as taas_obj"},{"line_number":31,"context_line":"from neutron_taas.extensions import taas as taas_extension"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":34,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"b34430cb_0918e999","line":31,"updated":"2026-07-29 09:59:05.000000000","message":"pep8: H306: imports not in alphabetical order (neutron_taas.objects.taas, neutron_taas.extensions.taas)","commit_id":"a24078aa98137f7612b2df7bc9bffc4e509d0179"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"860b1579605b713b67cc117c51e6c2965ab9b04f","unresolved":true,"context_lines":[{"line_number":47,"context_line":"    @db_api.retry_if_session_inactive()"},{"line_number":48,"context_line":"    def _get_tap_id_association(self, context, tap_service_id):"},{"line_number":49,"context_line":"        t_id_assoc_ovos \u003d taas_obj.TapIdAssociation.get_objects("},{"line_number":50,"context_line":"            context.elevated(),"},{"line_number":51,"context_line":"            tap_service_id\u003dtap_service_id"},{"line_number":52,"context_line":"        )"},{"line_number":53,"context_line":"        if t_id_assoc_ovos:"}],"source_content_type":"text/x-python","patch_set":4,"id":"674f307b_83af90da","line":50,"updated":"2026-08-13 09:25:58.000000000","message":"why you need to use elevated context now?","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a816262e4a0d3bcefa805ad705ea52479b684240","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    @db_api.retry_if_session_inactive()"},{"line_number":48,"context_line":"    def _get_tap_id_association(self, context, tap_service_id):"},{"line_number":49,"context_line":"        t_id_assoc_ovos \u003d taas_obj.TapIdAssociation.get_objects("},{"line_number":50,"context_line":"            context.elevated(),"},{"line_number":51,"context_line":"            tap_service_id\u003dtap_service_id"},{"line_number":52,"context_line":"        )"},{"line_number":53,"context_line":"        if t_id_assoc_ovos:"}],"source_content_type":"text/x-python","patch_set":4,"id":"10c6d247_55d488a1","line":50,"in_reply_to":"674f307b_83af90da","updated":"2026-08-14 09:00:19.000000000","message":"thanks, it is not necessary really","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"860b1579605b713b67cc117c51e6c2965ab9b04f","unresolved":true,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"    def _make_tap_service_dict(self, tap_service, fields\u003dNone):"},{"line_number":65,"context_line":"        res \u003d {\u0027id\u0027: tap_service[\u0027id\u0027],"},{"line_number":66,"context_line":"               \u0027project_id\u0027: tap_service[\u0027project_id\u0027],"},{"line_number":67,"context_line":"               \u0027name\u0027: tap_service[\u0027name\u0027],"},{"line_number":68,"context_line":"               \u0027description\u0027: tap_service[\u0027description\u0027],"},{"line_number":69,"context_line":"               \u0027port_id\u0027: tap_service[\u0027port_id\u0027],"}],"source_content_type":"text/x-python","patch_set":4,"id":"f7628377_cc14cee8","line":66,"updated":"2026-08-13 09:25:58.000000000","message":"You are \"silently\" changing it here from tenant_id to project_id. Wouldn\u0027t be better to keep \"tenant_id\" in this patch and do follow up to move everything to \"project_id\" later?","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a816262e4a0d3bcefa805ad705ea52479b684240","unresolved":true,"context_lines":[{"line_number":63,"context_line":""},{"line_number":64,"context_line":"    def _make_tap_service_dict(self, tap_service, fields\u003dNone):"},{"line_number":65,"context_line":"        res \u003d {\u0027id\u0027: tap_service[\u0027id\u0027],"},{"line_number":66,"context_line":"               \u0027project_id\u0027: tap_service[\u0027project_id\u0027],"},{"line_number":67,"context_line":"               \u0027name\u0027: tap_service[\u0027name\u0027],"},{"line_number":68,"context_line":"               \u0027description\u0027: tap_service[\u0027description\u0027],"},{"line_number":69,"context_line":"               \u0027port_id\u0027: tap_service[\u0027port_id\u0027],"}],"source_content_type":"text/x-python","patch_set":4,"id":"06811a99_736ada80","line":66,"in_reply_to":"f7628377_cc14cee8","updated":"2026-08-14 09:00:19.000000000","message":"true, I played with it again and OVO, and as DeclarativeObject (https://opendev.org/openstack/neutron/src/branch/master/neutron/objects/base.py#L376) handles the tenant_id/project_id mirroring, I have to keep some of the project_id lines, but I will add follow_u to clean these in sync with haleyb","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"860b1579605b713b67cc117c51e6c2965ab9b04f","unresolved":true,"context_lines":[{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def _make_tap_flow_dict(self, tap_flow, fields\u003dNone):"},{"line_number":81,"context_line":"        res \u003d {\u0027id\u0027: tap_flow[\u0027id\u0027],"},{"line_number":82,"context_line":"               \u0027project_id\u0027: tap_flow[\u0027project_id\u0027],"},{"line_number":83,"context_line":"               \u0027tap_service_id\u0027: tap_flow[\u0027tap_service_id\u0027],"},{"line_number":84,"context_line":"               \u0027name\u0027: tap_flow[\u0027name\u0027],"},{"line_number":85,"context_line":"               \u0027description\u0027: tap_flow[\u0027description\u0027],"}],"source_content_type":"text/x-python","patch_set":4,"id":"6cf565c4_dfa4955d","line":82,"updated":"2026-08-13 09:25:58.000000000","message":"ditto","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a816262e4a0d3bcefa805ad705ea52479b684240","unresolved":false,"context_lines":[{"line_number":79,"context_line":""},{"line_number":80,"context_line":"    def _make_tap_flow_dict(self, tap_flow, fields\u003dNone):"},{"line_number":81,"context_line":"        res \u003d {\u0027id\u0027: tap_flow[\u0027id\u0027],"},{"line_number":82,"context_line":"               \u0027project_id\u0027: tap_flow[\u0027project_id\u0027],"},{"line_number":83,"context_line":"               \u0027tap_service_id\u0027: tap_flow[\u0027tap_service_id\u0027],"},{"line_number":84,"context_line":"               \u0027name\u0027: tap_flow[\u0027name\u0027],"},{"line_number":85,"context_line":"               \u0027description\u0027: tap_flow[\u0027description\u0027],"}],"source_content_type":"text/x-python","patch_set":4,"id":"708af2b0_8fdeeca3","line":82,"in_reply_to":"6cf565c4_dfa4955d","updated":"2026-08-14 09:00:19.000000000","message":"Done","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"860b1579605b713b67cc117c51e6c2965ab9b04f","unresolved":true,"context_lines":[{"line_number":108,"context_line":"        }"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    @db_api.retry_if_session_inactive()"},{"line_number":111,"context_line":"    @log_helpers.log_method_call"},{"line_number":112,"context_line":"    @db_api.CONTEXT_WRITER"},{"line_number":113,"context_line":"    def create_tap_service(self, context, tap_service):"},{"line_number":114,"context_line":"        t_s \u003d tap_service[\u0027tap_service\u0027]"}],"source_content_type":"text/x-python","patch_set":4,"id":"90ab04e9_6490ad53","line":111,"updated":"2026-08-13 09:25:58.000000000","message":"unrelated change? I see you\u0027ve replaced calling LOG.debug() below with this decorator which is good change but maybe it should be done as follow up patch","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a816262e4a0d3bcefa805ad705ea52479b684240","unresolved":false,"context_lines":[{"line_number":108,"context_line":"        }"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    @db_api.retry_if_session_inactive()"},{"line_number":111,"context_line":"    @log_helpers.log_method_call"},{"line_number":112,"context_line":"    @db_api.CONTEXT_WRITER"},{"line_number":113,"context_line":"    def create_tap_service(self, context, tap_service):"},{"line_number":114,"context_line":"        t_s \u003d tap_service[\u0027tap_service\u0027]"}],"source_content_type":"text/x-python","patch_set":4,"id":"ea45939c_0f6f4362","line":111,"in_reply_to":"90ab04e9_6490ad53","updated":"2026-08-14 09:00:19.000000000","message":"true, was easier to tell the truth searching the logs with the same pattern, but I will add a follow-up","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"860b1579605b713b67cc117c51e6c2965ab9b04f","unresolved":true,"context_lines":[{"line_number":116,"context_line":"        tap_service_ovo \u003d taas_obj.TapService("},{"line_number":117,"context_line":"            context,"},{"line_number":118,"context_line":"            id\u003duuidutils.generate_uuid(),"},{"line_number":119,"context_line":"            project_id\u003dproject_id,"},{"line_number":120,"context_line":"            name\u003dt_s[\u0027name\u0027],"},{"line_number":121,"context_line":"            description\u003dt_s[\u0027description\u0027],"},{"line_number":122,"context_line":"            port_id\u003dt_s[\u0027port_id\u0027],"}],"source_content_type":"text/x-python","patch_set":4,"id":"333a3ce9_415d607a","line":119,"updated":"2026-08-13 09:25:58.000000000","message":"same here (and please apply that comment to all other places in this patch which I maybe missed or didn\u0027t comment explicitly :))","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a816262e4a0d3bcefa805ad705ea52479b684240","unresolved":false,"context_lines":[{"line_number":116,"context_line":"        tap_service_ovo \u003d taas_obj.TapService("},{"line_number":117,"context_line":"            context,"},{"line_number":118,"context_line":"            id\u003duuidutils.generate_uuid(),"},{"line_number":119,"context_line":"            project_id\u003dproject_id,"},{"line_number":120,"context_line":"            name\u003dt_s[\u0027name\u0027],"},{"line_number":121,"context_line":"            description\u003dt_s[\u0027description\u0027],"},{"line_number":122,"context_line":"            port_id\u003dt_s[\u0027port_id\u0027],"}],"source_content_type":"text/x-python","patch_set":4,"id":"567253f8_2d2e723a","line":119,"in_reply_to":"333a3ce9_415d607a","updated":"2026-08-14 09:00:19.000000000","message":"Done","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"860b1579605b713b67cc117c51e6c2965ab9b04f","unresolved":true,"context_lines":[{"line_number":123,"context_line":"            status\u003dconstants.DOWN,"},{"line_number":124,"context_line":"        )"},{"line_number":125,"context_line":"        tap_service_ovo.create()"},{"line_number":126,"context_line":"        tap_service_ovo \u003d self.get_tap_service(context, tap_service_ovo.id)"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"        return self._make_tap_service_dict(tap_service_ovo)"},{"line_number":129,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"a84d57d0_aea8a244","line":126,"updated":"2026-08-13 09:25:58.000000000","message":"do we need to fetch newly created object from DB again? Will it add any fields to the result?","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a816262e4a0d3bcefa805ad705ea52479b684240","unresolved":true,"context_lines":[{"line_number":123,"context_line":"            status\u003dconstants.DOWN,"},{"line_number":124,"context_line":"        )"},{"line_number":125,"context_line":"        tap_service_ovo.create()"},{"line_number":126,"context_line":"        tap_service_ovo \u003d self.get_tap_service(context, tap_service_ovo.id)"},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"        return self._make_tap_service_dict(tap_service_ovo)"},{"line_number":129,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"34cfb113_a78462f1","line":126,"in_reply_to":"a84d57d0_aea8a244","updated":"2026-08-14 09:00:19.000000000","message":"no, we can get rid of the extra call","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"860b1579605b713b67cc117c51e6c2965ab9b04f","unresolved":true,"context_lines":[{"line_number":160,"context_line":"        raise taas_exc.TapServiceLimitReached()"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"    @db_api.retry_if_session_inactive()"},{"line_number":163,"context_line":"    @log_helpers.log_method_call"},{"line_number":164,"context_line":"    @db_api.CONTEXT_WRITER"},{"line_number":165,"context_line":"    def create_tap_id_association(self, context, tap_service_id):"},{"line_number":166,"context_line":"        # create the TapIdAssociation object"}],"source_content_type":"text/x-python","patch_set":4,"id":"40a13730_f266e0ee","line":163,"updated":"2026-08-13 09:25:58.000000000","message":"unrelated change? See my comment above","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a816262e4a0d3bcefa805ad705ea52479b684240","unresolved":false,"context_lines":[{"line_number":160,"context_line":"        raise taas_exc.TapServiceLimitReached()"},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"    @db_api.retry_if_session_inactive()"},{"line_number":163,"context_line":"    @log_helpers.log_method_call"},{"line_number":164,"context_line":"    @db_api.CONTEXT_WRITER"},{"line_number":165,"context_line":"    def create_tap_id_association(self, context, tap_service_id):"},{"line_number":166,"context_line":"        # create the TapIdAssociation object"}],"source_content_type":"text/x-python","patch_set":4,"id":"988a0385_4e6ef900","line":163,"in_reply_to":"40a13730_f266e0ee","updated":"2026-08-14 09:00:19.000000000","message":"Done","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"860b1579605b713b67cc117c51e6c2965ab9b04f","unresolved":true,"context_lines":[{"line_number":174,"context_line":"        return self._make_tap_id_association_dict(tap_id_association_db)"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"    @db_api.retry_if_session_inactive()"},{"line_number":177,"context_line":"    @log_helpers.log_method_call"},{"line_number":178,"context_line":"    @db_api.CONTEXT_WRITER"},{"line_number":179,"context_line":"    def create_tap_flow(self, context, tap_flow):"},{"line_number":180,"context_line":"        t_f \u003d tap_flow[\u0027tap_flow\u0027]"}],"source_content_type":"text/x-python","patch_set":4,"id":"20d1cbdc_5c3921e9","line":177,"updated":"2026-08-13 09:25:58.000000000","message":"ditto","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a816262e4a0d3bcefa805ad705ea52479b684240","unresolved":false,"context_lines":[{"line_number":174,"context_line":"        return self._make_tap_id_association_dict(tap_id_association_db)"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"    @db_api.retry_if_session_inactive()"},{"line_number":177,"context_line":"    @log_helpers.log_method_call"},{"line_number":178,"context_line":"    @db_api.CONTEXT_WRITER"},{"line_number":179,"context_line":"    def create_tap_flow(self, context, tap_flow):"},{"line_number":180,"context_line":"        t_f \u003d tap_flow[\u0027tap_flow\u0027]"}],"source_content_type":"text/x-python","patch_set":4,"id":"b5151144_729e95f8","line":177,"in_reply_to":"20d1cbdc_5c3921e9","updated":"2026-08-14 09:00:19.000000000","message":"Done","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"860b1579605b713b67cc117c51e6c2965ab9b04f","unresolved":true,"context_lines":[{"line_number":195,"context_line":"        )"},{"line_number":196,"context_line":"        tap_flow_ovo.create()"},{"line_number":197,"context_line":"        tap_flow_ovo \u003d self.get_tap_flow(context,"},{"line_number":198,"context_line":"                                         tap_flow_ovo.id)"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"        return self._make_tap_flow_dict(tap_flow_ovo)"},{"line_number":201,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"8b2525ce_e0b35d3d","line":198,"updated":"2026-08-13 09:25:58.000000000","message":"same question as above: do we need to get it from db before returning?","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a816262e4a0d3bcefa805ad705ea52479b684240","unresolved":false,"context_lines":[{"line_number":195,"context_line":"        )"},{"line_number":196,"context_line":"        tap_flow_ovo.create()"},{"line_number":197,"context_line":"        tap_flow_ovo \u003d self.get_tap_flow(context,"},{"line_number":198,"context_line":"                                         tap_flow_ovo.id)"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"        return self._make_tap_flow_dict(tap_flow_ovo)"},{"line_number":201,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"c5dd081c_3c4dedb9","line":198,"in_reply_to":"8b2525ce_e0b35d3d","updated":"2026-08-14 09:00:19.000000000","message":"No I removed it.","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"860b1579605b713b67cc117c51e6c2965ab9b04f","unresolved":true,"context_lines":[{"line_number":200,"context_line":"        return self._make_tap_flow_dict(tap_flow_ovo)"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"    @db_api.retry_if_session_inactive()"},{"line_number":203,"context_line":"    @log_helpers.log_method_call"},{"line_number":204,"context_line":"    @db_api.CONTEXT_WRITER"},{"line_number":205,"context_line":"    def delete_tap_service(self, context, id):"},{"line_number":206,"context_line":"        tap_service_ovo \u003d self._get_tap_service(context, id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"473fbac6_6020acc4","line":203,"updated":"2026-08-13 09:25:58.000000000","message":"ditto - and the same apply to all similar changes below","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"a816262e4a0d3bcefa805ad705ea52479b684240","unresolved":false,"context_lines":[{"line_number":200,"context_line":"        return self._make_tap_flow_dict(tap_flow_ovo)"},{"line_number":201,"context_line":""},{"line_number":202,"context_line":"    @db_api.retry_if_session_inactive()"},{"line_number":203,"context_line":"    @log_helpers.log_method_call"},{"line_number":204,"context_line":"    @db_api.CONTEXT_WRITER"},{"line_number":205,"context_line":"    def delete_tap_service(self, context, id):"},{"line_number":206,"context_line":"        tap_service_ovo \u003d self._get_tap_service(context, id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"aa07fb4d_4ea78051","line":203,"in_reply_to":"473fbac6_6020acc4","updated":"2026-08-14 09:00:19.000000000","message":"Done","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"}],"neutron_taas/db/tap_mirror_db.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"86d8a3a82d0e30d641a0f9a962402ae72788bd11","unresolved":false,"context_lines":[{"line_number":20,"context_line":"from oslo_utils import uuidutils"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"from neutron_taas.objects import tap_mirror as tm_obj"},{"line_number":23,"context_line":"from neutron_taas.extensions import tap_mirror as tap_m_extension"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"LOG \u003d logging.getLogger(__name__)"}],"source_content_type":"text/x-python","patch_set":3,"id":"01ce4769_9a4a8089","line":23,"updated":"2026-07-29 09:59:05.000000000","message":"pep8: H306: imports not in alphabetical order (neutron_taas.objects.tap_mirror, neutron_taas.extensions.tap_mirror)","commit_id":"a24078aa98137f7612b2df7bc9bffc4e509d0179"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"860b1579605b713b67cc117c51e6c2965ab9b04f","unresolved":true,"context_lines":[{"line_number":67,"context_line":"            tap_mirror_ovo.create()"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"            # TODO(lajoskatona): Check tunnel_id..."},{"line_number":70,"context_line":"            tap_mirror_ovo \u003d self._get_tap_mirror(context, tap_mirror_ovo.id)"},{"line_number":71,"context_line":""},{"line_number":72,"context_line":"            return self._make_tap_mirror_dict(tap_mirror_ovo)"},{"line_number":73,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"99345b55_67e3aa30","line":70,"updated":"2026-08-13 09:25:58.000000000","message":"same: do we need to get it from db?","commit_id":"1e5841d63297b4d46826440aaea8b353bd933fac"}]}
