)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"317c15560177c2ec0dee9d4fa06b9d55616147d1","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"dhcp: add/use cleanup stale devices API"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This is adding new API for the dhcp to clean devices. It has been"},{"line_number":10,"context_line":"noticed that nothing is clean device when its port get removed."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Partial-Bug: #1956435"},{"line_number":13,"context_line":"Partial-Bug: #1764738"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":30,"id":"b2407cbe_c5b426f3","line":10,"range":{"start_line":9,"start_character":54,"end_line":10,"end_character":63},"updated":"2022-08-31 08:53:56.000000000","message":"this deserves a specific bug I think","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"9385f2b36c05b8a89587e811bc721451722a925a","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"dhcp: add/use cleanup stale devices API"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This is adding new API for the dhcp to clean devices. It has been"},{"line_number":10,"context_line":"noticed that nothing is clean device when its port get removed."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Partial-Bug: #1956435"},{"line_number":13,"context_line":"Partial-Bug: #1764738"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":30,"id":"51b7061b_3fa511e9","line":10,"range":{"start_line":9,"start_character":54,"end_line":10,"end_character":63},"in_reply_to":"b2407cbe_c5b426f3","updated":"2022-09-02 14:18:34.000000000","message":"Not totally sure since it\u0027s related to that serie (feature). But that was not clear in my phrasing, I will change that +1","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"a4f76ddca33c54532abf1eac31a1e584ebc52d8e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":23,"id":"32194202_c951437b","updated":"2022-07-25 08:51:22.000000000","message":"As we are adding new abstract method with this patch, maybe some short release note would be useful? Wdyt about it?","commit_id":"f1e8c2033d54e577e9891c44addb08fa4549aff5"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"bcf2bfe1e83f12f91ab600d171830dca8ce49567","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":28,"id":"ff496fad_16d45d91","updated":"2022-08-02 15:55:05.000000000","message":"recheck","commit_id":"1f36074bcaa9da14e19c3f85ea7fadca23f97bad"},{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"317c15560177c2ec0dee9d4fa06b9d55616147d1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":30,"id":"93156f73_320b87f6","updated":"2022-08-31 08:53:56.000000000","message":"Also please do not recheck without a reason","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"c155a32c16a822533f114eed611af72b34bbf4a7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":30,"id":"69fc7ff4_86ec2d2c","updated":"2022-08-31 07:01:23.000000000","message":"recheck","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"eec37086fbc099c2fa0c6475f4a392391293fd41","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"b100162a_f27b78f7","updated":"2022-09-05 09:19:06.000000000","message":"Let\u0027s wait with the other patches till the dust settles around Zed","commit_id":"1ea5d38c990a93fc4b5815bc667623ca4194e9a7"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"9385f2b36c05b8a89587e811bc721451722a925a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"4909a711_e8c83f87","updated":"2022-09-02 14:18:34.000000000","message":"recheck unrelated POST_FAILURE","commit_id":"1ea5d38c990a93fc4b5815bc667623ca4194e9a7"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"36817d5c3b81fcb378db162c6401880a818a06cb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":37,"id":"ed6d9061_7fac3cb1","updated":"2022-10-05 15:17:26.000000000","message":"Yes It\u0027s related to the previous patch, let me fix it.","commit_id":"7c4d81a122d5878b9f6f6e2416a34cd713f10f7e"},{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"df2733294cf39f4457867d216b539729194ebf5a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":37,"id":"cac5b5a4_099ee655","updated":"2022-10-05 13:14:40.000000000","message":"func test failure looks related","commit_id":"7c4d81a122d5878b9f6f6e2416a34cd713f10f7e"},{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"e7685dd80147445719ebea57cd9352c1c0370f5d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":40,"id":"a0161c09_80e71f1e","updated":"2022-10-07 10:48:53.000000000","message":"Yep, thanks!","commit_id":"66ab92233e09e8a5ba7d18bdd74635176a4af1dd"}],"neutron/agent/dhcp/agent.py":[{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"317c15560177c2ec0dee9d4fa06b9d55616147d1","unresolved":true,"context_lines":[{"line_number":687,"context_line":"        port \u003d self.cache.get_port_by_id(port_id)"},{"line_number":688,"context_line":"        network \u003d self.cache.get_network_by_id(payload[\u0027network_id\u0027])"},{"line_number":689,"context_line":"        self.cache.add_to_deleted_ports(port_id)"},{"line_number":690,"context_line":"        if not port:"},{"line_number":691,"context_line":"            self.call_driver(\u0027clean_devices\u0027, network)"},{"line_number":692,"context_line":"            # Let\u0027s ensure that device related get removed."},{"line_number":693,"context_line":"            return"},{"line_number":694,"context_line":"        self.cache.remove_port(port)"}],"source_content_type":"text/x-python","patch_set":30,"id":"16e38f04_52fd6d31","line":691,"range":{"start_line":690,"start_character":8,"end_line":691,"end_character":54},"updated":"2022-08-31 08:53:56.000000000","message":"please elaborate on the case when this happens (could be described in a bug that I mentioned in my previous comment)","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"9385f2b36c05b8a89587e811bc721451722a925a","unresolved":true,"context_lines":[{"line_number":687,"context_line":"        port \u003d self.cache.get_port_by_id(port_id)"},{"line_number":688,"context_line":"        network \u003d self.cache.get_network_by_id(payload[\u0027network_id\u0027])"},{"line_number":689,"context_line":"        self.cache.add_to_deleted_ports(port_id)"},{"line_number":690,"context_line":"        if not port:"},{"line_number":691,"context_line":"            self.call_driver(\u0027clean_devices\u0027, network)"},{"line_number":692,"context_line":"            # Let\u0027s ensure that device related get removed."},{"line_number":693,"context_line":"            return"},{"line_number":694,"context_line":"        self.cache.remove_port(port)"}],"source_content_type":"text/x-python","patch_set":30,"id":"9ed45d22_5f4ae3b7","line":691,"range":{"start_line":690,"start_character":8,"end_line":691,"end_character":54},"in_reply_to":"16e38f04_52fd6d31","updated":"2022-09-02 14:18:34.000000000","message":"I have updated the commit message, does that make sense now?","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"e6b1f58e10cc7fcd7c6f8ac065762d1e364b240f","unresolved":false,"context_lines":[{"line_number":687,"context_line":"        port \u003d self.cache.get_port_by_id(port_id)"},{"line_number":688,"context_line":"        network \u003d self.cache.get_network_by_id(payload[\u0027network_id\u0027])"},{"line_number":689,"context_line":"        self.cache.add_to_deleted_ports(port_id)"},{"line_number":690,"context_line":"        if not port:"},{"line_number":691,"context_line":"            self.call_driver(\u0027clean_devices\u0027, network)"},{"line_number":692,"context_line":"            # Let\u0027s ensure that device related get removed."},{"line_number":693,"context_line":"            return"},{"line_number":694,"context_line":"        self.cache.remove_port(port)"}],"source_content_type":"text/x-python","patch_set":30,"id":"58c925e2_be2d4915","line":691,"range":{"start_line":690,"start_character":8,"end_line":691,"end_character":54},"in_reply_to":"9ed45d22_5f4ae3b7","updated":"2022-10-07 07:08:23.000000000","message":"I guess we are good with this Oleg. Thanks!","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"},{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"317c15560177c2ec0dee9d4fa06b9d55616147d1","unresolved":true,"context_lines":[{"line_number":689,"context_line":"        self.cache.add_to_deleted_ports(port_id)"},{"line_number":690,"context_line":"        if not port:"},{"line_number":691,"context_line":"            self.call_driver(\u0027clean_devices\u0027, network)"},{"line_number":692,"context_line":"            # Let\u0027s ensure that device related get removed."},{"line_number":693,"context_line":"            return"},{"line_number":694,"context_line":"        self.cache.remove_port(port)"},{"line_number":695,"context_line":"        if self._is_port_on_this_agent(port):"}],"source_content_type":"text/x-python","patch_set":30,"id":"f7734229_133b1522","line":692,"range":{"start_line":692,"start_character":12,"end_line":692,"end_character":59},"updated":"2022-08-31 08:53:56.000000000","message":"this should be before #691, right?","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"9385f2b36c05b8a89587e811bc721451722a925a","unresolved":false,"context_lines":[{"line_number":689,"context_line":"        self.cache.add_to_deleted_ports(port_id)"},{"line_number":690,"context_line":"        if not port:"},{"line_number":691,"context_line":"            self.call_driver(\u0027clean_devices\u0027, network)"},{"line_number":692,"context_line":"            # Let\u0027s ensure that device related get removed."},{"line_number":693,"context_line":"            return"},{"line_number":694,"context_line":"        self.cache.remove_port(port)"},{"line_number":695,"context_line":"        if self._is_port_on_this_agent(port):"}],"source_content_type":"text/x-python","patch_set":30,"id":"f50d81dd_a5b6fcec","line":692,"range":{"start_line":692,"start_character":12,"end_line":692,"end_character":59},"in_reply_to":"f7734229_133b1522","updated":"2022-09-02 14:18:34.000000000","message":"Done","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"}],"neutron/agent/linux/dhcp.py":[{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"317c15560177c2ec0dee9d4fa06b9d55616147d1","unresolved":true,"context_lines":[{"line_number":235,"context_line":""},{"line_number":236,"context_line":"    @abc.abstractmethod"},{"line_number":237,"context_line":"    def clean_devices(self, network):"},{"line_number":238,"context_line":"        \"\"\"Request to cleqn unecessary devices for the network\"\"\""},{"line_number":239,"context_line":""},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"class DhcpLocalProcess(DhcpBase, metaclass\u003dabc.ABCMeta):"}],"source_content_type":"text/x-python","patch_set":30,"id":"670c8ccb_ebcd2459","line":238,"range":{"start_line":238,"start_character":22,"end_line":238,"end_character":27},"updated":"2022-08-31 08:53:56.000000000","message":"nit: clean","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"},{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"317c15560177c2ec0dee9d4fa06b9d55616147d1","unresolved":true,"context_lines":[{"line_number":235,"context_line":""},{"line_number":236,"context_line":"    @abc.abstractmethod"},{"line_number":237,"context_line":"    def clean_devices(self, network):"},{"line_number":238,"context_line":"        \"\"\"Request to cleqn unecessary devices for the network\"\"\""},{"line_number":239,"context_line":""},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"class DhcpLocalProcess(DhcpBase, metaclass\u003dabc.ABCMeta):"}],"source_content_type":"text/x-python","patch_set":30,"id":"cbb21161_620a9193","line":238,"range":{"start_line":238,"start_character":28,"end_line":238,"end_character":38},"updated":"2022-08-31 08:53:56.000000000","message":"unnecessary","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"9385f2b36c05b8a89587e811bc721451722a925a","unresolved":false,"context_lines":[{"line_number":235,"context_line":""},{"line_number":236,"context_line":"    @abc.abstractmethod"},{"line_number":237,"context_line":"    def clean_devices(self, network):"},{"line_number":238,"context_line":"        \"\"\"Request to cleqn unecessary devices for the network\"\"\""},{"line_number":239,"context_line":""},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"class DhcpLocalProcess(DhcpBase, metaclass\u003dabc.ABCMeta):"}],"source_content_type":"text/x-python","patch_set":30,"id":"7da3b383_e7c53b87","line":238,"range":{"start_line":238,"start_character":22,"end_line":238,"end_character":27},"in_reply_to":"670c8ccb_ebcd2459","updated":"2022-09-02 14:18:34.000000000","message":"Done","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"9385f2b36c05b8a89587e811bc721451722a925a","unresolved":false,"context_lines":[{"line_number":235,"context_line":""},{"line_number":236,"context_line":"    @abc.abstractmethod"},{"line_number":237,"context_line":"    def clean_devices(self, network):"},{"line_number":238,"context_line":"        \"\"\"Request to cleqn unecessary devices for the network\"\"\""},{"line_number":239,"context_line":""},{"line_number":240,"context_line":""},{"line_number":241,"context_line":"class DhcpLocalProcess(DhcpBase, metaclass\u003dabc.ABCMeta):"}],"source_content_type":"text/x-python","patch_set":30,"id":"0767afbf_ce7b4c10","line":238,"range":{"start_line":238,"start_character":28,"end_line":238,"end_character":38},"in_reply_to":"cbb21161_620a9193","updated":"2022-09-02 14:18:34.000000000","message":"Done","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"}],"releasenotes/notes/new-abstract-method-dhcp-cleanup-4fc973915e3723b8.yaml":[{"author":{"_account_id":5948,"name":"Oleg Bondarev","email":"obondarev@mirantis.com","username":"obondarev"},"change_message_id":"317c15560177c2ec0dee9d4fa06b9d55616147d1","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Introducing `clean_devices`, a new DHCP Agent\u0027s API that can be"},{"line_number":5,"context_line":"    called to clean stale devices."}],"source_content_type":"text/x-yaml","patch_set":30,"id":"9a22f5de_93945f58","line":4,"range":{"start_line":4,"start_character":39,"end_line":4,"end_character":55},"updated":"2022-08-31 08:53:56.000000000","message":"it\u0027s a driver API, not agent","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"9385f2b36c05b8a89587e811bc721451722a925a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Introducing `clean_devices`, a new DHCP Agent\u0027s API that can be"},{"line_number":5,"context_line":"    called to clean stale devices."}],"source_content_type":"text/x-yaml","patch_set":30,"id":"75e41e1b_883545a1","line":4,"range":{"start_line":4,"start_character":39,"end_line":4,"end_character":55},"in_reply_to":"9a22f5de_93945f58","updated":"2022-09-02 14:18:34.000000000","message":"Done","commit_id":"477797404938312b561df7c23ca07bf1adb66e80"}]}
