)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"5e3cc03146251b355f2179e720daf2f92f8e6994","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Chinemerem \u003ccchigbo@nvidia.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2024-10-25 09:30:03 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Rename obj to obj_path"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In our updater we define `obj \u003d \u0027/%s/%s/%s\u0027 % (acct, cont, update[\u0027obj\u0027])` which is a path, not an object. This commit renames the variable appropriately"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"7364c4db_9368f3dc","line":7,"range":{"start_line":7,"start_character":14,"end_line":7,"end_character":22},"updated":"2024-10-28 10:12:08.000000000","message":"should be ``path`` ? I guess there may have been some iteration in the code change","commit_id":"c5b10218a4269fb535b2d86065142bd938af1895"},{"author":{"_account_id":37271,"name":"Chinemerem Chigbo","display_name":"Chinemerem","email":"cchigbo@nvidia.com","username":"chinemerem"},"change_message_id":"f37445f4b09cccf06079991d1064af3ecd2a4b1d","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Chinemerem \u003ccchigbo@nvidia.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2024-10-25 09:30:03 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Rename obj to obj_path"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In our updater we define `obj \u003d \u0027/%s/%s/%s\u0027 % (acct, cont, update[\u0027obj\u0027])` which is a path, not an object. This commit renames the variable appropriately"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"4d299df5_dca66493","line":7,"range":{"start_line":7,"start_character":14,"end_line":7,"end_character":22},"in_reply_to":"7364c4db_9368f3dc","updated":"2024-10-28 16:39:51.000000000","message":"Updated, thanks!","commit_id":"c5b10218a4269fb535b2d86065142bd938af1895"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"45b82564744febde7f2a84698a9df902a940f1af","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"bc5b291a_badcfcc5","updated":"2024-10-18 16:21:31.000000000","message":"i think this is a reasonable idea, the existing variable name *is* confused - but the problem in the updater is more pervasive and \"obj_path\" is only a *little bit* more clear compared to using the same name as the arg from \"http_connect\" IMHO.","commit_id":"2a093d8bb9a9b81beaea06539c1b1fd800c3f855"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"5e3cc03146251b355f2179e720daf2f92f8e6994","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"ff65fcd0_f6978cd3","updated":"2024-10-28 10:12:08.000000000","message":"All makes sense apart from the commit message ;-)","commit_id":"c5b10218a4269fb535b2d86065142bd938af1895"},{"author":{"_account_id":34930,"name":"Jianjian Huo","email":"jhuo@nvidia.com","username":"jhuo"},"change_message_id":"6c8e522ece5b59738ba871cb3c2933511f9e3a91","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"e0de0409_131b1e3d","updated":"2024-10-25 22:24:11.000000000","message":"LGTM, since the same variable in ``http_connect`` is also called ``path``.","commit_id":"c5b10218a4269fb535b2d86065142bd938af1895"}],"swift/obj/updater.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"45b82564744febde7f2a84698a9df902a940f1af","unresolved":true,"context_lines":[{"line_number":625,"context_line":"            headers_out.setdefault(\u0027X-Backend-Accept-Quoted-Location\u0027, \u0027true\u0027)"},{"line_number":626,"context_line":"            acct, cont \u003d split_update_path(update)"},{"line_number":627,"context_line":"            part, nodes \u003d self.get_container_ring().get_nodes(acct, cont)"},{"line_number":628,"context_line":"            obj_path \u003d \u0027/%s/%s/%s\u0027 % (acct, cont, update[\u0027obj\u0027])"},{"line_number":629,"context_line":"            events \u003d [spawn(self.object_update,"},{"line_number":630,"context_line":"                            node, part, update[\u0027op\u0027], obj_path, headers_out)"},{"line_number":631,"context_line":"                      for node in nodes if node[\u0027id\u0027] not in successes]"}],"source_content_type":"text/x-python","patch_set":1,"id":"427ad621_f1dbc7ff","line":628,"updated":"2024-10-18 16:21:31.000000000","message":"maybe still confusing that \"obj_path\" is a \"full_account_container_path\"\n\nmaybe better as just \"path\"","commit_id":"2a093d8bb9a9b81beaea06539c1b1fd800c3f855"},{"author":{"_account_id":37271,"name":"Chinemerem Chigbo","display_name":"Chinemerem","email":"cchigbo@nvidia.com","username":"chinemerem"},"change_message_id":"bf81f3a5639fb0d9ec6cfb33ae32d3a54d88d998","unresolved":false,"context_lines":[{"line_number":625,"context_line":"            headers_out.setdefault(\u0027X-Backend-Accept-Quoted-Location\u0027, \u0027true\u0027)"},{"line_number":626,"context_line":"            acct, cont \u003d split_update_path(update)"},{"line_number":627,"context_line":"            part, nodes \u003d self.get_container_ring().get_nodes(acct, cont)"},{"line_number":628,"context_line":"            obj_path \u003d \u0027/%s/%s/%s\u0027 % (acct, cont, update[\u0027obj\u0027])"},{"line_number":629,"context_line":"            events \u003d [spawn(self.object_update,"},{"line_number":630,"context_line":"                            node, part, update[\u0027op\u0027], obj_path, headers_out)"},{"line_number":631,"context_line":"                      for node in nodes if node[\u0027id\u0027] not in successes]"}],"source_content_type":"text/x-python","patch_set":1,"id":"c28b113b_cd018883","line":628,"in_reply_to":"427ad621_f1dbc7ff","updated":"2024-10-25 03:48:27.000000000","message":"Done","commit_id":"2a093d8bb9a9b81beaea06539c1b1fd800c3f855"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"45b82564744febde7f2a84698a9df902a940f1af","unresolved":true,"context_lines":[{"line_number":703,"context_line":"        :param node: node dictionary from the container ring"},{"line_number":704,"context_line":"        :param part: partition that holds the container"},{"line_number":705,"context_line":"        :param op: operation performed (ex: \u0027PUT\u0027 or \u0027DELETE\u0027)"},{"line_number":706,"context_line":"        :param obj: object name being updated"},{"line_number":707,"context_line":"        :param headers_out: headers to send with the update"},{"line_number":708,"context_line":"        :return: a tuple of (``success``, ``node_id``, ``redirect``)"},{"line_number":709,"context_line":"            where ``success`` is True if the update succeeded, ``node_id`` is"}],"source_content_type":"text/x-python","patch_set":1,"id":"a9c80716_ce8e9ee9","line":706,"updated":"2024-10-18 16:21:31.000000000","message":"this almost seems *wrong*","commit_id":"2a093d8bb9a9b81beaea06539c1b1fd800c3f855"},{"author":{"_account_id":37271,"name":"Chinemerem Chigbo","display_name":"Chinemerem","email":"cchigbo@nvidia.com","username":"chinemerem"},"change_message_id":"bf81f3a5639fb0d9ec6cfb33ae32d3a54d88d998","unresolved":false,"context_lines":[{"line_number":703,"context_line":"        :param node: node dictionary from the container ring"},{"line_number":704,"context_line":"        :param part: partition that holds the container"},{"line_number":705,"context_line":"        :param op: operation performed (ex: \u0027PUT\u0027 or \u0027DELETE\u0027)"},{"line_number":706,"context_line":"        :param obj: object name being updated"},{"line_number":707,"context_line":"        :param headers_out: headers to send with the update"},{"line_number":708,"context_line":"        :return: a tuple of (``success``, ``node_id``, ``redirect``)"},{"line_number":709,"context_line":"            where ``success`` is True if the update succeeded, ``node_id`` is"}],"source_content_type":"text/x-python","patch_set":1,"id":"8ef9538c_c9b0c878","line":706,"in_reply_to":"a9c80716_ce8e9ee9","updated":"2024-10-25 03:48:27.000000000","message":"Acknowledged","commit_id":"2a093d8bb9a9b81beaea06539c1b1fd800c3f855"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"45b82564744febde7f2a84698a9df902a940f1af","unresolved":true,"context_lines":[{"line_number":718,"context_line":"            with ConnectionTimeout(self.conn_timeout):"},{"line_number":719,"context_line":"                conn \u003d http_connect("},{"line_number":720,"context_line":"                    node[\u0027replication_ip\u0027], node[\u0027replication_port\u0027],"},{"line_number":721,"context_line":"                    node[\u0027device\u0027], part, op, obj, headers_out)"},{"line_number":722,"context_line":"            with Timeout(self.node_timeout):"},{"line_number":723,"context_line":"                resp \u003d conn.getresponse()"},{"line_number":724,"context_line":"                resp.read()"}],"source_content_type":"text/x-python","patch_set":1,"id":"64580c25_71fd847b","line":721,"updated":"2024-10-18 16:21:31.000000000","message":"in http_connect the 6th arg is clearly just \"path\"\n\nhttps://github.com/NVIDIA/swift/blob/master/swift/common/bufferedhttp.py#L253","commit_id":"2a093d8bb9a9b81beaea06539c1b1fd800c3f855"},{"author":{"_account_id":37271,"name":"Chinemerem Chigbo","display_name":"Chinemerem","email":"cchigbo@nvidia.com","username":"chinemerem"},"change_message_id":"bf81f3a5639fb0d9ec6cfb33ae32d3a54d88d998","unresolved":false,"context_lines":[{"line_number":718,"context_line":"            with ConnectionTimeout(self.conn_timeout):"},{"line_number":719,"context_line":"                conn \u003d http_connect("},{"line_number":720,"context_line":"                    node[\u0027replication_ip\u0027], node[\u0027replication_port\u0027],"},{"line_number":721,"context_line":"                    node[\u0027device\u0027], part, op, obj, headers_out)"},{"line_number":722,"context_line":"            with Timeout(self.node_timeout):"},{"line_number":723,"context_line":"                resp \u003d conn.getresponse()"},{"line_number":724,"context_line":"                resp.read()"}],"source_content_type":"text/x-python","patch_set":1,"id":"aa156120_5d6c861e","line":721,"in_reply_to":"64580c25_71fd847b","updated":"2024-10-25 03:48:27.000000000","message":"Acknowledged","commit_id":"2a093d8bb9a9b81beaea06539c1b1fd800c3f855"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"4bbd6c152c4d95d63867b93a887b7b98568f2ab6","unresolved":true,"context_lines":[{"line_number":703,"context_line":"        :param node: node dictionary from the container ring"},{"line_number":704,"context_line":"        :param part: partition that holds the container"},{"line_number":705,"context_line":"        :param op: operation performed (ex: \u0027PUT\u0027 or \u0027DELETE\u0027)"},{"line_number":706,"context_line":"        :param obj: object name being updated"},{"line_number":707,"context_line":"        :param headers_out: headers to send with the update"},{"line_number":708,"context_line":"        :return: a tuple of (``success``, ``node_id``, ``redirect``)"},{"line_number":709,"context_line":"            where ``success`` is True if the update succeeded, ``node_id`` is"}],"source_content_type":"text/x-python","patch_set":2,"id":"54b871b1_e19f9490","line":706,"updated":"2024-10-25 16:26:32.000000000","message":"I think maybe @clay.gerrard@gmail.com was pushing for an update here, too; something like\n```\n:param path: /\u003cacct\u003e/\u003ccont\u003e/\u003cobj\u003e path being updated\n```\nand appropriate `s/obj/path/` for the function.","commit_id":"a0bd986cba955855a64bdff1dd432dcb2251fe43"},{"author":{"_account_id":37271,"name":"Chinemerem Chigbo","display_name":"Chinemerem","email":"cchigbo@nvidia.com","username":"chinemerem"},"change_message_id":"7bb4f78a600a03b2240428a8b648f95b4c961594","unresolved":false,"context_lines":[{"line_number":703,"context_line":"        :param node: node dictionary from the container ring"},{"line_number":704,"context_line":"        :param part: partition that holds the container"},{"line_number":705,"context_line":"        :param op: operation performed (ex: \u0027PUT\u0027 or \u0027DELETE\u0027)"},{"line_number":706,"context_line":"        :param obj: object name being updated"},{"line_number":707,"context_line":"        :param headers_out: headers to send with the update"},{"line_number":708,"context_line":"        :return: a tuple of (``success``, ``node_id``, ``redirect``)"},{"line_number":709,"context_line":"            where ``success`` is True if the update succeeded, ``node_id`` is"}],"source_content_type":"text/x-python","patch_set":2,"id":"5585976e_50456d64","line":706,"in_reply_to":"54b871b1_e19f9490","updated":"2024-10-25 16:31:05.000000000","message":"Ahhh, that makes a lot of sense. Updated.","commit_id":"a0bd986cba955855a64bdff1dd432dcb2251fe43"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"5e3cc03146251b355f2179e720daf2f92f8e6994","unresolved":true,"context_lines":[{"line_number":703,"context_line":"        :param node: node dictionary from the container ring"},{"line_number":704,"context_line":"        :param part: partition that holds the container"},{"line_number":705,"context_line":"        :param op: operation performed (ex: \u0027PUT\u0027 or \u0027DELETE\u0027)"},{"line_number":706,"context_line":"        :param obj: object name being updated"},{"line_number":707,"context_line":"        :param headers_out: headers to send with the update"},{"line_number":708,"context_line":"        :return: a tuple of (``success``, ``node_id``, ``redirect``)"},{"line_number":709,"context_line":"            where ``success`` is True if the update succeeded, ``node_id`` is"}],"source_content_type":"text/x-python","patch_set":3,"id":"7468df90_0b5c6e7f","side":"PARENT","line":706,"range":{"start_line":706,"start_character":20,"end_line":706,"end_character":31},"updated":"2024-10-28 10:12:08.000000000","message":"ouch, ``name`` definitely implies just the final part of the path to me. ``path`` is much better.","commit_id":"8ded39bccd9192b570e24cf039a3a4c8e3ccc216"},{"author":{"_account_id":37271,"name":"Chinemerem Chigbo","display_name":"Chinemerem","email":"cchigbo@nvidia.com","username":"chinemerem"},"change_message_id":"f37445f4b09cccf06079991d1064af3ecd2a4b1d","unresolved":false,"context_lines":[{"line_number":703,"context_line":"        :param node: node dictionary from the container ring"},{"line_number":704,"context_line":"        :param part: partition that holds the container"},{"line_number":705,"context_line":"        :param op: operation performed (ex: \u0027PUT\u0027 or \u0027DELETE\u0027)"},{"line_number":706,"context_line":"        :param obj: object name being updated"},{"line_number":707,"context_line":"        :param headers_out: headers to send with the update"},{"line_number":708,"context_line":"        :return: a tuple of (``success``, ``node_id``, ``redirect``)"},{"line_number":709,"context_line":"            where ``success`` is True if the update succeeded, ``node_id`` is"}],"source_content_type":"text/x-python","patch_set":3,"id":"af163224_7cbc77ae","side":"PARENT","line":706,"range":{"start_line":706,"start_character":20,"end_line":706,"end_character":31},"in_reply_to":"7468df90_0b5c6e7f","updated":"2024-10-28 16:39:51.000000000","message":"Acknowledged","commit_id":"8ded39bccd9192b570e24cf039a3a4c8e3ccc216"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"5e3cc03146251b355f2179e720daf2f92f8e6994","unresolved":true,"context_lines":[{"line_number":676,"context_line":"                    path,"},{"line_number":677,"context_line":"                    update_path,"},{"line_number":678,"context_line":"                    update[\u0027container_path\u0027],"},{"line_number":679,"context_line":"                )"},{"line_number":680,"context_line":"                rewrite_pickle \u003d True"},{"line_number":681,"context_line":"            else:"},{"line_number":682,"context_line":"                self.stats.failures +\u003d 1"}],"source_content_type":"text/x-python","patch_set":3,"id":"31316ac3_099691b6","line":679,"updated":"2024-10-28 10:12:08.000000000","message":"nit: we don\u0027t have a consistent style for string formatting. In general I wouldn\u0027t change the existing style unnecessarily. \n\nI remember once reading a tip that was something along the lines of \"when modifying a codebase we should avoid straightening other peoples pictures\", the analogy being if you visit someone\u0027s home it\u0027s great to bring them a gift but don\u0027t straighten their pictures - if they like them wonky that\u0027s their choice, however much it offends you. (I can\u0027t find a reference for the quote now). A good example might be an author\u0027s preference for ``\u0027`` or ``\"``.\n\nIt\u0027s not quite that simple with a shared codebase, because style does matter, and sometimes it makes sense to at least have the same style within a module or class (perhaps that justifies this change).\n\nFWIW I tend to prefer this more concise style unless there\u0027s already a dict of args available, so I\u0027m personally not bothered if the change remains 😊 I just thought I should mention the principle w.r.t. unnecessary reformatting.","commit_id":"c5b10218a4269fb535b2d86065142bd938af1895"},{"author":{"_account_id":37271,"name":"Chinemerem Chigbo","display_name":"Chinemerem","email":"cchigbo@nvidia.com","username":"chinemerem"},"change_message_id":"f37445f4b09cccf06079991d1064af3ecd2a4b1d","unresolved":false,"context_lines":[{"line_number":676,"context_line":"                    path,"},{"line_number":677,"context_line":"                    update_path,"},{"line_number":678,"context_line":"                    update[\u0027container_path\u0027],"},{"line_number":679,"context_line":"                )"},{"line_number":680,"context_line":"                rewrite_pickle \u003d True"},{"line_number":681,"context_line":"            else:"},{"line_number":682,"context_line":"                self.stats.failures +\u003d 1"}],"source_content_type":"text/x-python","patch_set":3,"id":"555ce028_6cafc73f","line":679,"in_reply_to":"31316ac3_099691b6","updated":"2024-10-28 16:39:51.000000000","message":"This makes sense, updated!","commit_id":"c5b10218a4269fb535b2d86065142bd938af1895"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"5e3cc03146251b355f2179e720daf2f92f8e6994","unresolved":true,"context_lines":[{"line_number":703,"context_line":"        :param node: node dictionary from the container ring"},{"line_number":704,"context_line":"        :param part: partition that holds the container"},{"line_number":705,"context_line":"        :param op: operation performed (ex: \u0027PUT\u0027 or \u0027DELETE\u0027)"},{"line_number":706,"context_line":"        :param path: /\u003cacct\u003e/\u003ccont\u003e/\u003cobj\u003e path being updated"},{"line_number":707,"context_line":"        :param headers_out: headers to send with the update"},{"line_number":708,"context_line":"        :return: a tuple of (``success``, ``node_id``, ``redirect``)"},{"line_number":709,"context_line":"            where ``success`` is True if the update succeeded, ``node_id`` is"}],"source_content_type":"text/x-python","patch_set":3,"id":"12727007_e630125b","line":706,"updated":"2024-10-28 10:12:08.000000000","message":"+1 this method is passed ``obj \u003d \u0027/%s/%s/%s\u0027 % (acct, cont, update[\u0027obj\u0027])`` from ``process_object_update``","commit_id":"c5b10218a4269fb535b2d86065142bd938af1895"},{"author":{"_account_id":37271,"name":"Chinemerem Chigbo","display_name":"Chinemerem","email":"cchigbo@nvidia.com","username":"chinemerem"},"change_message_id":"f37445f4b09cccf06079991d1064af3ecd2a4b1d","unresolved":false,"context_lines":[{"line_number":703,"context_line":"        :param node: node dictionary from the container ring"},{"line_number":704,"context_line":"        :param part: partition that holds the container"},{"line_number":705,"context_line":"        :param op: operation performed (ex: \u0027PUT\u0027 or \u0027DELETE\u0027)"},{"line_number":706,"context_line":"        :param path: /\u003cacct\u003e/\u003ccont\u003e/\u003cobj\u003e path being updated"},{"line_number":707,"context_line":"        :param headers_out: headers to send with the update"},{"line_number":708,"context_line":"        :return: a tuple of (``success``, ``node_id``, ``redirect``)"},{"line_number":709,"context_line":"            where ``success`` is True if the update succeeded, ``node_id`` is"}],"source_content_type":"text/x-python","patch_set":3,"id":"d5b407e5_fd39430e","line":706,"in_reply_to":"12727007_e630125b","updated":"2024-10-28 16:39:51.000000000","message":"Acknowledged","commit_id":"c5b10218a4269fb535b2d86065142bd938af1895"}]}
