)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"accc916cfcbf879d7f97a46e5fc32775148c0755","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"519d3b8a_5b7db171","updated":"2025-11-21 07:27:22.000000000","message":"check experimental","commit_id":"66e3864b5041fac3104ac4ca79893ae4d5a42fe4"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"847918cbebaab51712bb110071d3852e83823d20","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"5dd817b1_be9ce8c4","updated":"2025-11-20 18:36:19.000000000","message":"check experimental","commit_id":"66e3864b5041fac3104ac4ca79893ae4d5a42fe4"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"f7aa6f9f05b378b952dafa07e5304e106e84ce0e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"8cc01d3c_d910a2f6","updated":"2025-11-21 07:22:16.000000000","message":"recheck\nIt seems zuul noticed https://review.opendev.org/c/openstack/neutron/+/967811 and stopped, now I abandoned it let\u0027s see if it makes zuul happy","commit_id":"66e3864b5041fac3104ac4ca79893ae4d5a42fe4"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"5fe40e765188f608376498957e595d982c896265","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"25e8cf7e_3d7107f6","updated":"2025-11-21 19:43:30.000000000","message":"check experimental","commit_id":"aca7c3bfcdc6e075a1864107a6ada4fc63454ffe"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"23253c4b65d84ecc2f52c1e719d37fdfb83409c6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"6da3efae_c3134d30","updated":"2026-01-23 04:46:39.000000000","message":"-1 to highlight question","commit_id":"d55460cab3204fc341ef5030703d1043c0d5769e"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"996a5c25f0ac5d63d47c4b3f9f9c672bdb9f55db","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"efbba489_e828f08c","updated":"2026-01-23 20:26:55.000000000","message":"recheck functional timeout","commit_id":"fd40351f3de14e2d576ff6fe87e8dbe439a3d23a"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"c01d60f5bbe1677f35ffcb281d9efd6857c11fb8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"3a6a6dc8_70504a81","updated":"2026-02-17 15:21:35.000000000","message":"recheck\nfunctional failure test_gateway_chassis_least_loaded_scheduler_anti_affinity is not rleated (I check if it is a one time failure or we need a bug)","commit_id":"b67a007e43786574e337c21d26e35be38f697d56"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"c2797d89ae5ef12df4490687e9f2a7215856991e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"8354c70a_6c7da62a","in_reply_to":"3a6a6dc8_70504a81","updated":"2026-02-17 15:22:32.000000000","message":"yeah this one we covered during the CI meeting: https://meetings.opendev.org/meetings/neutron_ci/2026/neutron_ci.2026-02-16-15.01.log.html#l-26","commit_id":"b67a007e43786574e337c21d26e35be38f697d56"}],"neutron/agent/dhcp/agent.py":[{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"7e49ca2dc852e43fcf76bbf9423ecfb2a3faaba0","unresolved":true,"context_lines":[{"line_number":111,"context_line":"    def __init__(self, host\u003dNone, conf\u003dNone):"},{"line_number":112,"context_line":"        super().__init__(host\u003dhost)"},{"line_number":113,"context_line":"        self._exiting \u003d False"},{"line_number":114,"context_line":"        self._stopping_event \u003d None"},{"line_number":115,"context_line":"        self._threads \u003d []"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"        self.needs_resync_reasons \u003d collections.defaultdict(list)"}],"source_content_type":"text/x-python","patch_set":5,"id":"c1a6ae23_d60d3434","line":114,"updated":"2026-01-21 19:55:02.000000000","message":"Is this supposed to be a threading.Event() and not None?","commit_id":"d55460cab3204fc341ef5030703d1043c0d5769e"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"2b24f201cc648d927e6c1d6cc10cc0c48863d88c","unresolved":true,"context_lines":[{"line_number":111,"context_line":"    def __init__(self, host\u003dNone, conf\u003dNone):"},{"line_number":112,"context_line":"        super().__init__(host\u003dhost)"},{"line_number":113,"context_line":"        self._exiting \u003d False"},{"line_number":114,"context_line":"        self._stopping_event \u003d None"},{"line_number":115,"context_line":"        self._threads \u003d []"},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"        self.needs_resync_reasons \u003d collections.defaultdict(list)"}],"source_content_type":"text/x-python","patch_set":5,"id":"f4930bb6_54a5c0c0","line":114,"in_reply_to":"c1a6ae23_d60d3434","updated":"2026-01-23 15:56:27.000000000","message":"yeah, actually it is set in init_host, but true it is not nice here","commit_id":"d55460cab3204fc341ef5030703d1043c0d5769e"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"97dec86fc3764a975d2cf62b8273edf40d37843a","unresolved":true,"context_lines":[{"line_number":204,"context_line":"        self._process_monitor.stop()"},{"line_number":205,"context_line":"        self.cache.cleanup_loop.stop()"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"        self._pool.shutdown(wait\u003dFalse, cancel_futures\u003dTrue)"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"        for thread in self._threads:"},{"line_number":210,"context_line":"            if thread.is_alive():"}],"source_content_type":"text/x-python","patch_set":7,"id":"a69bf0d3_65b21175","line":207,"range":{"start_line":207,"start_character":8,"end_line":207,"end_character":60},"updated":"2026-02-16 09:30:10.000000000","message":"nit (that can be addresses in a follow-up patch): now you have implemented ``stopping_event`` in ``ThreadPoolExecutorWithBlock``, ``self._pool`` can have ``self._stopping_event`` too, skipping the need for this call. Please correct me if I\u0027m wrong.","commit_id":"371ec2b4151980875e5a598caa78fd41a41fdc52"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"d667389110612a6d8359ba0e69ef9252616e8ba6","unresolved":true,"context_lines":[{"line_number":204,"context_line":"        self._process_monitor.stop()"},{"line_number":205,"context_line":"        self.cache.cleanup_loop.stop()"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"        self._pool.shutdown(wait\u003dFalse, cancel_futures\u003dTrue)"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"        for thread in self._threads:"},{"line_number":210,"context_line":"            if thread.is_alive():"}],"source_content_type":"text/x-python","patch_set":7,"id":"a22fc7d9_5d7b1192","line":207,"range":{"start_line":207,"start_character":8,"end_line":207,"end_character":60},"in_reply_to":"1baa8da3_96fcdda6","updated":"2026-02-17 10:46:46.000000000","message":"yeah the call for shutdown() can be replaced by using the _pool._shutdown_event, thanks","commit_id":"371ec2b4151980875e5a598caa78fd41a41fdc52"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"e4e4606024b51938de25ae00a60c8f992039b60d","unresolved":true,"context_lines":[{"line_number":204,"context_line":"        self._process_monitor.stop()"},{"line_number":205,"context_line":"        self.cache.cleanup_loop.stop()"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"        self._pool.shutdown(wait\u003dFalse, cancel_futures\u003dTrue)"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"        for thread in self._threads:"},{"line_number":210,"context_line":"            if thread.is_alive():"}],"source_content_type":"text/x-python","patch_set":7,"id":"1baa8da3_96fcdda6","line":207,"range":{"start_line":207,"start_character":8,"end_line":207,"end_character":60},"in_reply_to":"a69bf0d3_65b21175","updated":"2026-02-16 09:57:13.000000000","message":"That is true, the self._pool has _stopping_event, I will check it in my env.","commit_id":"371ec2b4151980875e5a598caa78fd41a41fdc52"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"51b1683a8c1606e89cefc210e1c369ba96f48865","unresolved":true,"context_lines":[{"line_number":204,"context_line":"        self._process_monitor.stop()"},{"line_number":205,"context_line":"        self.cache.cleanup_loop.stop()"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"        self._pool._stopping_event.set()"},{"line_number":208,"context_line":""},{"line_number":209,"context_line":"        for thread in self._threads:"},{"line_number":210,"context_line":"            if thread.is_alive():"}],"source_content_type":"text/x-python","patch_set":8,"id":"02445355_dedeeed2","line":207,"range":{"start_line":207,"start_character":8,"end_line":207,"end_character":40},"updated":"2026-02-17 10:47:51.000000000","message":"That works but I was talking about changing `self._pool` initialization in L159, passing `self._stopping_event`. Because we call `self._stopping_event.set()` in L200, there is no need for this line. In any case, this is a nit that can be addressed later.","commit_id":"b67a007e43786574e337c21d26e35be38f697d56"}],"zuul.d/job-templates.yaml":[{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"e91663a4c367762aca4788302f8f5af42dded2dc","unresolved":true,"context_lines":[{"line_number":116,"context_line":"        - neutron-ovn-tempest-ovs-release-fips"},{"line_number":117,"context_line":"        - devstack-tobiko-neutron:"},{"line_number":118,"context_line":"            voting: true"},{"line_number":119,"context_line":"        - devstack-tobiko-ovs:"},{"line_number":120,"context_line":"            voting: true"},{"line_number":121,"context_line":"        - ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa"},{"line_number":122,"context_line":"        - openstacksdk-functional-devstack-networking"},{"line_number":123,"context_line":"        - neutron-ovs-tempest-plugin-iptables_hybrid-nftables"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"fafcddbe_f3110569","line":120,"range":{"start_line":119,"start_character":8,"end_line":120,"end_character":24},"updated":"2025-11-21 10:44:10.000000000","message":"I think it is a good idea to leave this job here in periodic/experimental","commit_id":"aca7c3bfcdc6e075a1864107a6ada4fc63454ffe"},{"author":{"_account_id":1131,"name":"Brian Haley","email":"haleyb.dev@gmail.com","username":"brian-haley"},"change_message_id":"5fe40e765188f608376498957e595d982c896265","unresolved":true,"context_lines":[{"line_number":116,"context_line":"        - neutron-ovn-tempest-ovs-release-fips"},{"line_number":117,"context_line":"        - devstack-tobiko-neutron:"},{"line_number":118,"context_line":"            voting: true"},{"line_number":119,"context_line":"        - devstack-tobiko-ovs:"},{"line_number":120,"context_line":"            voting: true"},{"line_number":121,"context_line":"        - ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa"},{"line_number":122,"context_line":"        - openstacksdk-functional-devstack-networking"},{"line_number":123,"context_line":"        - neutron-ovs-tempest-plugin-iptables_hybrid-nftables"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"3fc96dde_d2163578","line":120,"range":{"start_line":119,"start_character":8,"end_line":120,"end_character":24},"in_reply_to":"fafcddbe_f3110569","updated":"2025-11-21 19:43:30.000000000","message":"nit: does the voting status matter for either job as it\u0027s not the check or gate queue?","commit_id":"aca7c3bfcdc6e075a1864107a6ada4fc63454ffe"}]}
