)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"215bfedbdb355d7958ea1ef65ffa97fbd2cdb2d2","unresolved":true,"context_lines":[{"line_number":20,"context_line":"they\u0027ll collapse into the root container."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Currently when we shrink, the shard needs to have an acceptor pushed"},{"line_number":23,"context_line":"into it\u0027s shard range table. And that\u0027s alot of work for an op. This"},{"line_number":24,"context_line":"patch makes is that:"},{"line_number":25,"context_line":"  - If the root is deleted"},{"line_number":26,"context_line":"  - the delete timestamp is older then reclaim_age"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"61a45c88_49fa239f","line":23,"range":{"start_line":23,"start_character":29,"end_line":23,"end_character":62},"updated":"2021-01-19 16:14:15.000000000","message":"If we have https://review.opendev.org/c/openstack/swift/+/765623 or similar then it shouldn\u0027t be a lot of work, in fact it should be part and parcel of marking shards as SHRINKING *at the root container* so ops only interact with the root.\n\nI\u0027d prefer to have a single way in which we manage shard shrinking.","commit_id":"34fd06ab0b832991be4e6a79355902e9f6a7f145"}],"swift/container/sharder.py":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"215bfedbdb355d7958ea1ef65ffa97fbd2cdb2d2","unresolved":true,"context_lines":[{"line_number":844,"context_line":"            root_acceptor \u003d ShardRange("},{"line_number":845,"context_line":"                broker.root_path, Timestamp.now(), ShardRange.MIN,"},{"line_number":846,"context_line":"                ShardRange.MAX, state\u003dShardRange.ACTIVE)"},{"line_number":847,"context_line":"            broker.merge_shard_ranges([root_acceptor])"},{"line_number":848,"context_line":""},{"line_number":849,"context_line":"        deletable_states \u003d (ShardRange.SHARDED, ShardRange.SHRUNK)"},{"line_number":850,"context_line":"        if (own_shard_range.state in deletable_states and"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a207391_63eb02b2","line":847,"updated":"2021-01-19 16:14:15.000000000","message":"not sure I understand...if shard is shrinking, then the root must have set it to state SHRINKING, so the root would have already provided acceptor range(s)? above (line 837) ... this unilateral synthesis of a root acceptor seems to be at odds with the root driving shrinking.\n\nah, so having read the commit message, I think I see the direction here. However, as commented on the commit, I\u0027d rather we just had the root advertise itself as an acceptor when setting the shard to shrinking vs. doing it here. I think there will be some work to do on the root side, to have it send itself in the fetch_shard_ranges response when appropriate, but that is more consistent with the approach for shrinking in general.","commit_id":"34fd06ab0b832991be4e6a79355902e9f6a7f145"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"029fcd90ba303697709f37314c7babbea497dcae","unresolved":true,"context_lines":[{"line_number":844,"context_line":"            root_acceptor \u003d ShardRange("},{"line_number":845,"context_line":"                broker.root_path, Timestamp.now(), ShardRange.MIN,"},{"line_number":846,"context_line":"                ShardRange.MAX, state\u003dShardRange.ACTIVE)"},{"line_number":847,"context_line":"            broker.merge_shard_ranges([root_acceptor])"},{"line_number":848,"context_line":""},{"line_number":849,"context_line":"        deletable_states \u003d (ShardRange.SHARDED, ShardRange.SHRUNK)"},{"line_number":850,"context_line":"        if (own_shard_range.state in deletable_states and"}],"source_content_type":"text/x-python","patch_set":1,"id":"0b92e915_0d5d9fa8","line":847,"in_reply_to":"1a207391_63eb02b2","updated":"2021-01-20 21:38:30.000000000","message":"oh I see, so if as a special case for just 1 shard that needs to collapse we insert the root shard (MIN, MAX) into the roots shardranges so it comes down in the audit!\n\nI like it!","commit_id":"34fd06ab0b832991be4e6a79355902e9f6a7f145"}]}
