)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":5112,"name":"Seyeong Kim","email":"seyeong.kim@canonical.com","username":"xtrusia"},"change_message_id":"a3575817946ff0e9f286e41348dfcd55724a8986","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"166ff859_e67a3d0f","updated":"2026-06-22 08:23:42.000000000","message":"LGTM on the code. I reproduced the issue and confirmed this patch fixes it.\n\nWithout the patch, when I remove an instance that is already gone from the metadata, the cluster-relation-departed hook fails and keeps retrying in a loop.\nThe remove-instance action also fails with \"Metadata for instance not found\". With the patch, the hook completes and the action returns success with your WARN log.\n\nI gave -1 only to ask one thing. can we add a zaza test for this?\nFor example, run remove-instance twice for the same address and check that the second call succeeds and shows the WARN message.(rough idea)\n\nThe test can go in the zaza-openstack-tests repo. We can run it with func-test-pr in the commit message, or with the test runner in stsstack-bundles.\n\nThanks.","commit_id":"3a240785ce98e93bf15649947c42e42b65fa3e43"},{"author":{"_account_id":5112,"name":"Seyeong Kim","email":"seyeong.kim@canonical.com","username":"xtrusia"},"change_message_id":"ebf079001110c1b03f86f24ef9f6d5f1ec7c7e3e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b87e2abd_db32aedd","updated":"2026-07-21 04:12:58.000000000","message":"maybe worth having discussion.","commit_id":"3a240785ce98e93bf15649947c42e42b65fa3e43"}],"src/lib/charm/openstack/mysql_innodb_cluster.py":[{"author":{"_account_id":5112,"name":"Seyeong Kim","email":"seyeong.kim@canonical.com","username":"xtrusia"},"change_message_id":"ebf079001110c1b03f86f24ef9f6d5f1ec7c7e3e","unresolved":true,"context_lines":[{"line_number":1114,"context_line":"        _topology \u003d _status.get(\"defaultReplicaSet\", {}).get(\"topology\", {})"},{"line_number":1115,"context_line":"        # Topology keys are of the form \"address:port\"."},{"line_number":1116,"context_line":"        return any("},{"line_number":1117,"context_line":"            _member.rsplit(\":\", 1)[0] \u003d\u003d address for _member in _topology)"},{"line_number":1118,"context_line":""},{"line_number":1119,"context_line":"    def remove_instance(self, address, force\u003dFalse):"},{"line_number":1120,"context_line":"        \"\"\"Remove instance from the cluster"}],"source_content_type":"text/x-python","patch_set":2,"id":"c7b23ba6_7790e644","line":1117,"updated":"2026-07-21 04:12:58.000000000","message":"I haven\u0027t found many usage of urlsplit in charms, we may use urllib.parse.urlsplit to support both ipv4 and ipv6. maybe need another review.","commit_id":"3a240785ce98e93bf15649947c42e42b65fa3e43"}]}
