)]}'
{"swift/container/sharder.py":[{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"e76ad90a84651d99eb489b7a77fbf5c2fd5f88a4","unresolved":true,"context_lines":[{"line_number":1722,"context_line":""},{"line_number":1723,"context_line":"            if shard_range.lower \u003e cleaving_context.cursor:"},{"line_number":1724,"context_line":"                self.logger.info(\u0027Stopped cleave at gap: %r - %r\u0027 %"},{"line_number":1725,"context_line":"                                 (cleaving_context.cursor, shard_range.lower))"},{"line_number":1726,"context_line":"                break"},{"line_number":1727,"context_line":""},{"line_number":1728,"context_line":"            if shard_range.state not in (ShardRange.CREATED,"}],"source_content_type":"text/x-python","patch_set":4,"id":"19f0c56b_3d3c14cd","line":1725,"updated":"2021-04-07 07:24:36.000000000","message":"I wonder if this should be more of a warning because we could be in an interesting state? but I guess below we\u0027re using info so meh.","commit_id":"448e1cd33ea6876874077369e2dd2a9449dfe177"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"a0f859200a886e3406601cd74df873e6cc9dc1f4","unresolved":true,"context_lines":[{"line_number":1707,"context_line":"        else:"},{"line_number":1708,"context_line":"            cleaving_context.start()"},{"line_number":1709,"context_line":"            own_shard_range \u003d broker.get_own_shard_range()"},{"line_number":1710,"context_line":"            cleaving_context.cursor \u003d own_shard_range.lower_str"},{"line_number":1711,"context_line":"            cleaving_context.ranges_todo \u003d len(ranges_todo)"},{"line_number":1712,"context_line":"            self.logger.debug(\u0027Starting to cleave (%s todo): %s\u0027,"},{"line_number":1713,"context_line":"                              cleaving_context.ranges_todo, quote(broker.path))"}],"source_content_type":"text/x-python","patch_set":5,"id":"e9d0925f_195f8a52","line":1710,"updated":"2021-04-23 17:16:31.000000000","message":"If we\u0027re a shard with a misplaced object outside of our range, that still gets dealt with before we unlink the retiring DB, right?","commit_id":"bcee79338ed0e760d57a57b272894e09214b342a"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"2db7b1b2e03860f8ae5a997f2a86a58ab91f85b6","unresolved":true,"context_lines":[{"line_number":1707,"context_line":"        else:"},{"line_number":1708,"context_line":"            cleaving_context.start()"},{"line_number":1709,"context_line":"            own_shard_range \u003d broker.get_own_shard_range()"},{"line_number":1710,"context_line":"            cleaving_context.cursor \u003d own_shard_range.lower_str"},{"line_number":1711,"context_line":"            cleaving_context.ranges_todo \u003d len(ranges_todo)"},{"line_number":1712,"context_line":"            self.logger.debug(\u0027Starting to cleave (%s todo): %s\u0027,"},{"line_number":1713,"context_line":"                              cleaving_context.ranges_todo, quote(broker.path))"}],"source_content_type":"text/x-python","patch_set":5,"id":"180bb817_7f8edf33","line":1710,"in_reply_to":"e9d0925f_195f8a52","updated":"2021-04-26 09:39:55.000000000","message":"misplaced objects are dealt with separately from leaving in _move_misplaced_objects()\n\nthe bounds for misplaced objects while db is in SHARDING state are (a) beyond own_sr.upper and (b):\n\n  if cleaving_context.cursor:\n    up to cleave context.cursor\n  else\n    up to own_sr.lower\n\nso setting cleave_context.cursor \u003d own_sr.lower here does not change the outcome for misplaced objects.\n\nBTW, we need this change to set cursor \u003d\u003d own_sr.lower so that the new condition at line 1727 doesn\u0027t prevent sharding shards starting to cleave.","commit_id":"bcee79338ed0e760d57a57b272894e09214b342a"}]}
