)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"dcb75f486ca12956711ea24f6a86a1e8428bd450","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"00938d1e_d8675a6d","updated":"2024-11-06 12:17:55.000000000","message":"recheck","commit_id":"d413b9955553724ed8409bf0e85c43b763c5f2f1"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"175c4b01f14aa1d3a3426238ced6f04132732114","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"ca44155b_592ea6ef","updated":"2024-12-12 12:29:28.000000000","message":"LGTM ..!","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"fe899c9e70c08f1ca2d828de7ac47c640b7124d0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9c2f6683_b2bb7d85","updated":"2024-11-21 22:50:14.000000000","message":"Thanks; LGTM","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"f0ed6c3f53d7ad456c0d742287c4a8c8b5813a50","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"3db8f3cc_6b7376d5","updated":"2024-11-22 02:38:16.000000000","message":"code looks good, just one comment.","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"a6d82431d852bb95c1ff072feeabe66aa9f125d2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"4783266c_76ebfb4b","updated":"2024-12-13 13:41:52.000000000","message":"recheck","commit_id":"6e8fcc65492ab9936f334f0a03950de99115d14d"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"93576b0911f51ce266dd8ca0b4f20752407cd88f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"142fe7ec_900ab521","updated":"2024-12-18 11:07:28.000000000","message":"LGTM, thank you Kiran","commit_id":"bc01cc1c1f5ed31fdc596e3239a348ce85a11de4"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"c28a6451b8072dac7aedb169b9ac9bdfb586fc5a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"8f397d7d_20933fe3","updated":"2024-12-18 02:57:13.000000000","message":"LGTM. thanks for your change.","commit_id":"bc01cc1c1f5ed31fdc596e3239a348ce85a11de4"}],"manila/db/sqlalchemy/api.py":[{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"173d58e714e850c4b114543984d7d73a2f346331","unresolved":true,"context_lines":[{"line_number":1955,"context_line":"                                  deferred_delete\u003dTrue)"},{"line_number":1956,"context_line":""},{"line_number":1957,"context_line":""},{"line_number":1958,"context_line":"def _set_instances_share_data(context, instances):"},{"line_number":1959,"context_line":"    if instances and not isinstance(instances, list):"},{"line_number":1960,"context_line":"        instances \u003d [instances]"},{"line_number":1961,"context_line":""},{"line_number":1962,"context_line":"    instances_with_share_data \u003d []"},{"line_number":1963,"context_line":"    for instance in instances:"},{"line_number":1964,"context_line":"        try:"},{"line_number":1965,"context_line":"            parent_share \u003d _share_get(context, instance[\u0027share_id\u0027])"},{"line_number":1966,"context_line":"        except exception.NotFound:"},{"line_number":1967,"context_line":"            continue"},{"line_number":1968,"context_line":"        instance.set_share_data(parent_share)"},{"line_number":1969,"context_line":"        instances_with_share_data.append(instance)"},{"line_number":1970,"context_line":"    return instances_with_share_data"},{"line_number":1971,"context_line":""},{"line_number":1972,"context_line":""},{"line_number":1973,"context_line":"@require_admin_context"}],"source_content_type":"text/x-python","patch_set":3,"id":"1b34573e_2903db4a","line":1970,"range":{"start_line":1958,"start_character":0,"end_line":1970,"end_character":36},"updated":"2024-11-22 02:50:55.000000000","message":"def _set_instances_share_data(instances_query):\n        instances \u003d instances_query.options(\n            orm.joinedload(models.ShareInstance.share)).all()\n        instances \u003d [s for s in instances if s.share]\n        for s in instances:\n            s.set_share_data(s.share)\n\n        return instances","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"4d81aeb44aaa903179fb822cbbba7d9982dd394b","unresolved":false,"context_lines":[{"line_number":1955,"context_line":"                                  deferred_delete\u003dTrue)"},{"line_number":1956,"context_line":""},{"line_number":1957,"context_line":""},{"line_number":1958,"context_line":"def _set_instances_share_data(context, instances):"},{"line_number":1959,"context_line":"    if instances and not isinstance(instances, list):"},{"line_number":1960,"context_line":"        instances \u003d [instances]"},{"line_number":1961,"context_line":""},{"line_number":1962,"context_line":"    instances_with_share_data \u003d []"},{"line_number":1963,"context_line":"    for instance in instances:"},{"line_number":1964,"context_line":"        try:"},{"line_number":1965,"context_line":"            parent_share \u003d _share_get(context, instance[\u0027share_id\u0027])"},{"line_number":1966,"context_line":"        except exception.NotFound:"},{"line_number":1967,"context_line":"            continue"},{"line_number":1968,"context_line":"        instance.set_share_data(parent_share)"},{"line_number":1969,"context_line":"        instances_with_share_data.append(instance)"},{"line_number":1970,"context_line":"    return instances_with_share_data"},{"line_number":1971,"context_line":""},{"line_number":1972,"context_line":""},{"line_number":1973,"context_line":"@require_admin_context"}],"source_content_type":"text/x-python","patch_set":3,"id":"53e27762_ea77b03b","line":1970,"range":{"start_line":1958,"start_character":0,"end_line":1970,"end_character":36},"in_reply_to":"1b34573e_2903db4a","updated":"2024-11-22 07:28:07.000000000","message":"Acknowledged","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"6a8fbf98ef4ec2751fcdf76fe332e6019f46d4d9","unresolved":true,"context_lines":[{"line_number":1987,"context_line":"        instances \u003d instances.filter(models.ShareInstance.status \u003d\u003d status)"},{"line_number":1988,"context_line":""},{"line_number":1989,"context_line":"    if with_share_data:"},{"line_number":1990,"context_line":"        instances \u003d instances.options("},{"line_number":1991,"context_line":"            orm.joinedload(models.ShareInstance.share)).all()"},{"line_number":1992,"context_line":"        instances \u003d [s for s in instances if s.share]"},{"line_number":1993,"context_line":"        for s in instances:"},{"line_number":1994,"context_line":"            s.set_share_data(s.share)"},{"line_number":1995,"context_line":"    else:"},{"line_number":1996,"context_line":"        # Returns list of all instances that satisfy filters."},{"line_number":1997,"context_line":"        instances \u003d instances.all()"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f740887_952c4f14","line":1994,"range":{"start_line":1990,"start_character":8,"end_line":1994,"end_character":37},"updated":"2024-11-22 08:28:33.000000000","message":"instances \u003d _set_instances_share_data(instances)","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"8be36143a4b56265e6a5892fe464f3872a089e8f","unresolved":false,"context_lines":[{"line_number":1987,"context_line":"        instances \u003d instances.filter(models.ShareInstance.status \u003d\u003d status)"},{"line_number":1988,"context_line":""},{"line_number":1989,"context_line":"    if with_share_data:"},{"line_number":1990,"context_line":"        instances \u003d instances.options("},{"line_number":1991,"context_line":"            orm.joinedload(models.ShareInstance.share)).all()"},{"line_number":1992,"context_line":"        instances \u003d [s for s in instances if s.share]"},{"line_number":1993,"context_line":"        for s in instances:"},{"line_number":1994,"context_line":"            s.set_share_data(s.share)"},{"line_number":1995,"context_line":"    else:"},{"line_number":1996,"context_line":"        # Returns list of all instances that satisfy filters."},{"line_number":1997,"context_line":"        instances \u003d instances.all()"}],"source_content_type":"text/x-python","patch_set":3,"id":"0cd51670_0239ec45","line":1994,"range":{"start_line":1990,"start_character":8,"end_line":1994,"end_character":37},"in_reply_to":"3f740887_952c4f14","updated":"2024-12-13 10:02:12.000000000","message":"Done","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"f0ed6c3f53d7ad456c0d742287c4a8c8b5813a50","unresolved":true,"context_lines":[{"line_number":2022,"context_line":"    )"},{"line_number":2023,"context_line":""},{"line_number":2024,"context_line":"    if with_share_data:"},{"line_number":2025,"context_line":"        result \u003d _set_instances_share_data(context, result)"},{"line_number":2026,"context_line":""},{"line_number":2027,"context_line":"    return result"},{"line_number":2028,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"35f69d89_fd3ca700","line":2025,"range":{"start_line":2025,"start_character":17,"end_line":2025,"end_character":42},"updated":"2024-11-22 02:38:16.000000000","message":"here and other place use this function may also has same problem. \nwhy not change the function def _set_instances_share_data()?","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"4d81aeb44aaa903179fb822cbbba7d9982dd394b","unresolved":true,"context_lines":[{"line_number":2022,"context_line":"    )"},{"line_number":2023,"context_line":""},{"line_number":2024,"context_line":"    if with_share_data:"},{"line_number":2025,"context_line":"        result \u003d _set_instances_share_data(context, result)"},{"line_number":2026,"context_line":""},{"line_number":2027,"context_line":"    return result"},{"line_number":2028,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3c1092d4_62996ed7","line":2025,"range":{"start_line":2025,"start_character":17,"end_line":2025,"end_character":42},"in_reply_to":"225c89fd_2b3de56c","updated":"2024-11-22 07:28:07.000000000","message":"this function get instances query and hence processing straight forward. on the other hand other functions have share_replica or share objects. So this will be little ugly two take two parameters e.g. either instances_query or instances and based on that take further decision.\nlet me know if you still believe to do that way.","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"173d58e714e850c4b114543984d7d73a2f346331","unresolved":true,"context_lines":[{"line_number":2022,"context_line":"    )"},{"line_number":2023,"context_line":""},{"line_number":2024,"context_line":"    if with_share_data:"},{"line_number":2025,"context_line":"        result \u003d _set_instances_share_data(context, result)"},{"line_number":2026,"context_line":""},{"line_number":2027,"context_line":"    return result"},{"line_number":2028,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"225c89fd_2b3de56c","line":2025,"range":{"start_line":2025,"start_character":17,"end_line":2025,"end_character":42},"in_reply_to":"35f69d89_fd3ca700","updated":"2024-11-22 02:50:55.000000000","message":"result \u003d (\n        model_query(context, models.ShareInstance).filter(\n            models.ShareInstance.share_server_id \u003d\u003d share_server_id))\n    if with_share_data:\n        result \u003d _set_instances_share_data(result)\n    else:\n        result \u003d result.all()\n        \n    return result","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":30407,"name":"haixin","email":"haixin_haixin@qq.com","username":"haixin"},"change_message_id":"6a8fbf98ef4ec2751fcdf76fe332e6019f46d4d9","unresolved":true,"context_lines":[{"line_number":2022,"context_line":"    )"},{"line_number":2023,"context_line":""},{"line_number":2024,"context_line":"    if with_share_data:"},{"line_number":2025,"context_line":"        result \u003d _set_instances_share_data(context, result)"},{"line_number":2026,"context_line":""},{"line_number":2027,"context_line":"    return result"},{"line_number":2028,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3f86276a_72557639","line":2025,"range":{"start_line":2025,"start_character":17,"end_line":2025,"end_character":42},"in_reply_to":"3c1092d4_62996ed7","updated":"2024-11-22 08:28:33.000000000","message":"function _set_instances_share_data only need one paramter instances_query.\n\n    def share_instance_get_all_by_share_server(context, share_server_id,\n                                           with_share_data\u003dFalse):\n        \"\"\"Returns list of share instance with given share server.\"\"\"\n        result \u003d (\n            model_query(context, models.ShareInstance).filter(\n                models.ShareInstance.share_server_id \u003d\u003d share_server_id,\n            ))\n\n        if with_share_data:\n            result \u003d _set_instances_share_data(result)\n        else:\n            restult \u003d result.all()\n\n        return result\n        \nother place can be done like this. we can wait Goutham and Carlos\u0027s idea about this.","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"93300c54228f9b0f5732ac67480dbb5527bcfc23","unresolved":true,"context_lines":[{"line_number":2022,"context_line":"    )"},{"line_number":2023,"context_line":""},{"line_number":2024,"context_line":"    if with_share_data:"},{"line_number":2025,"context_line":"        result \u003d _set_instances_share_data(context, result)"},{"line_number":2026,"context_line":""},{"line_number":2027,"context_line":"    return result"},{"line_number":2028,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"ead55207_ce05225b","line":2025,"range":{"start_line":2025,"start_character":17,"end_line":2025,"end_character":42},"in_reply_to":"3f86276a_72557639","updated":"2024-11-22 08:48:29.000000000","message":"some functions e.g. share_replicas_get_available_active_replica() takes .first() and hence passing instances_query for them is tricky. Lets see what others say","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"8be36143a4b56265e6a5892fe464f3872a089e8f","unresolved":false,"context_lines":[{"line_number":2022,"context_line":"    )"},{"line_number":2023,"context_line":""},{"line_number":2024,"context_line":"    if with_share_data:"},{"line_number":2025,"context_line":"        result \u003d _set_instances_share_data(context, result)"},{"line_number":2026,"context_line":""},{"line_number":2027,"context_line":"    return result"},{"line_number":2028,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"28b98a3f_f092b8bc","line":2025,"range":{"start_line":2025,"start_character":17,"end_line":2025,"end_character":42},"in_reply_to":"e3d2ba62_9757a187","updated":"2024-12-13 10:02:12.000000000","message":"Done","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"206f3efb5b49f661ef774562fbcd58b35b3becd3","unresolved":true,"context_lines":[{"line_number":2022,"context_line":"    )"},{"line_number":2023,"context_line":""},{"line_number":2024,"context_line":"    if with_share_data:"},{"line_number":2025,"context_line":"        result \u003d _set_instances_share_data(context, result)"},{"line_number":2026,"context_line":""},{"line_number":2027,"context_line":"    return result"},{"line_number":2028,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"e3d2ba62_9757a187","line":2025,"range":{"start_line":2025,"start_character":17,"end_line":2025,"end_character":42},"in_reply_to":"ead55207_ce05225b","updated":"2024-12-12 21:06:59.000000000","message":"I like this example from haixin and I believe we can adapt the code to return what we expect. Otherwise, the code snippet from line 1990 might only repeat what is already happening in the set instances share data function.","commit_id":"978d835740263d3338116dafb75520da9f6aafc8"}],"manila/tests/db/sqlalchemy/test_api.py":[{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"503e2e68c896c26851a8e64cb08a490930cb4555","unresolved":true,"context_lines":[{"line_number":594,"context_line":"            self.assertEqual(0, instance[\u0027size\u0027])"},{"line_number":595,"context_line":"        else:"},{"line_number":596,"context_line":"            self.assertNotIn(\u0027share_proto\u0027, instance)"},{"line_number":597,"context_line":""},{"line_number":598,"context_line":"    def test_share_instance_get_all_by_host_not_found_exception(self):"},{"line_number":599,"context_line":"        db_utils.create_share()"},{"line_number":600,"context_line":"        self.mock_object(db_api, \u0027_share_get\u0027, mock.Mock("},{"line_number":601,"context_line":"                         side_effect\u003dexception.NotFound))"},{"line_number":602,"context_line":"        instances \u003d db_api.share_instance_get_all_by_host("},{"line_number":603,"context_line":"            self.ctxt, \u0027fake_host\u0027, True)"},{"line_number":604,"context_line":""},{"line_number":605,"context_line":"        self.assertEqual(0, len(instances))"},{"line_number":606,"context_line":""},{"line_number":607,"context_line":"    def test_share_instance_get_all_by_share_group(self):"},{"line_number":608,"context_line":"        group \u003d db_utils.create_share_group()"}],"source_content_type":"text/x-python","patch_set":2,"id":"46084523_fb7d2f06","side":"PARENT","line":605,"range":{"start_line":597,"start_character":0,"end_line":605,"end_character":43},"updated":"2024-11-21 15:04:54.000000000","message":"why this test had to be removed? Wouldn\u0027t it still be a valid scenario to test?","commit_id":"27251dd6e71e110952a4854228b9a63c22c49e16"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"98f1c8f20d4e27fc5bec50ada6855c14a4682f28","unresolved":false,"context_lines":[{"line_number":594,"context_line":"            self.assertEqual(0, instance[\u0027size\u0027])"},{"line_number":595,"context_line":"        else:"},{"line_number":596,"context_line":"            self.assertNotIn(\u0027share_proto\u0027, instance)"},{"line_number":597,"context_line":""},{"line_number":598,"context_line":"    def test_share_instance_get_all_by_host_not_found_exception(self):"},{"line_number":599,"context_line":"        db_utils.create_share()"},{"line_number":600,"context_line":"        self.mock_object(db_api, \u0027_share_get\u0027, mock.Mock("},{"line_number":601,"context_line":"                         side_effect\u003dexception.NotFound))"},{"line_number":602,"context_line":"        instances \u003d db_api.share_instance_get_all_by_host("},{"line_number":603,"context_line":"            self.ctxt, \u0027fake_host\u0027, True)"},{"line_number":604,"context_line":""},{"line_number":605,"context_line":"        self.assertEqual(0, len(instances))"},{"line_number":606,"context_line":""},{"line_number":607,"context_line":"    def test_share_instance_get_all_by_share_group(self):"},{"line_number":608,"context_line":"        group \u003d db_utils.create_share_group()"}],"source_content_type":"text/x-python","patch_set":2,"id":"c41063a5_02beeda9","side":"PARENT","line":605,"range":{"start_line":597,"start_character":0,"end_line":605,"end_character":43},"in_reply_to":"46084523_fb7d2f06","updated":"2024-11-21 15:36:55.000000000","message":"since _set_instances_share_data() is removed which was having _share_get() call, this test needs to remove. but yes, with no host, it can be valid test, updated.","commit_id":"27251dd6e71e110952a4854228b9a63c22c49e16"}]}
