)]}'
{"swift/container/sharder.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2b1b8ed3cbb021e4685f2e3882406931780929df","unresolved":true,"context_lines":[{"line_number":1011,"context_line":"            # if there are no shard ranges then it should fall back to"},{"line_number":1012,"context_line":"            # using it\u0027s own_shard_range bounds."},{"line_number":1013,"context_line":"            if not shard_ranges:"},{"line_number":1014,"context_line":"                shard_ranges.append(own_shard_range)"},{"line_number":1015,"context_line":"            missing_ranges \u003d find_missing_ranges(shard_ranges)"},{"line_number":1016,"context_line":"            if missing_ranges:"},{"line_number":1017,"context_line":"                warnings.append("}],"source_content_type":"text/x-python","patch_set":1,"id":"c7d6c620_fe103d0b","line":1014,"updated":"2021-07-07 20:40:21.000000000","message":"this is just shard_ranges \u003d [own_shard_range] yeah?\n\nso, is this *ever* going to come back with missing_ranges?","commit_id":"9c9c36e2a2d4a6a1ed03bf550916dc214d160ef2"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2b1b8ed3cbb021e4685f2e3882406931780929df","unresolved":true,"context_lines":[{"line_number":1041,"context_line":"        # 1. So we can alert, and 2. to see how common it is."},{"line_number":1042,"context_line":"        if own_shard_range.epoch is None and broker.db_epoch:"},{"line_number":1043,"context_line":"            warnings.append(\u0027own_shard_range reset to None should be %s\u0027"},{"line_number":1044,"context_line":"                            % broker.db_epoch)"},{"line_number":1045,"context_line":""},{"line_number":1046,"context_line":"        if warnings:"},{"line_number":1047,"context_line":"            self.logger.warning("}],"source_content_type":"text/x-python","patch_set":1,"id":"8d2fcaec_e82067b8","line":1044,"updated":"2021-07-07 20:40:21.000000000","message":"yes, I don\u0027t think own_shard_range.epoch should ever be None if the db has an epoch","commit_id":"9c9c36e2a2d4a6a1ed03bf550916dc214d160ef2"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2b1b8ed3cbb021e4685f2e3882406931780929df","unresolved":true,"context_lines":[{"line_number":1047,"context_line":"            self.logger.warning("},{"line_number":1048,"context_line":"                \u0027Audit failed for root %s (%s): %s\u0027,"},{"line_number":1049,"context_line":"                broker.db_file, quote(broker.path), \u0027, \u0027.join(warnings))"},{"line_number":1050,"context_line":"            self._increment_stat(\u0027audit_root\u0027, \u0027failure\u0027, statsd\u003dTrue)"},{"line_number":1051,"context_line":"            return False"},{"line_number":1052,"context_line":""},{"line_number":1053,"context_line":"        self._increment_stat(\u0027audit_root\u0027, \u0027success\u0027, statsd\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":1,"id":"28e4b7c9_15b8bfe5","line":1050,"updated":"2021-07-07 20:40:21.000000000","message":"and this will get us in recon too!","commit_id":"9c9c36e2a2d4a6a1ed03bf550916dc214d160ef2"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"12046afe3a2fc69f65f5493521ae7a7ced46d90a","unresolved":true,"context_lines":[{"line_number":1037,"context_line":"        # 1. So we can alert, and 2. to see how common it is."},{"line_number":1038,"context_line":"        if own_shard_range.epoch is None and broker.db_epoch:"},{"line_number":1039,"context_line":"            warnings.append(\u0027own_shard_range reset to None should be %s\u0027"},{"line_number":1040,"context_line":"                            % broker.db_epoch)"},{"line_number":1041,"context_line":""},{"line_number":1042,"context_line":"        if warnings:"},{"line_number":1043,"context_line":"            self.logger.warning("}],"source_content_type":"text/x-python","patch_set":2,"id":"20e213de_6f321e00","line":1040,"updated":"2021-07-08 17:44:05.000000000","message":"oh yeah, i love this","commit_id":"da4010ae2b52d762a9a69ee4bd68e94298e0ac6a"}],"test/unit/container/test_sharder.py":[{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2b1b8ed3cbb021e4685f2e3882406931780929df","unresolved":true,"context_lines":[{"line_number":72,"context_line":"        datadir \u003d os.path.join("},{"line_number":73,"context_line":"            self.tempdir, device, \u0027containers\u0027, str(part), hash_[-3:], hash_)"},{"line_number":74,"context_line":"        if epoch:"},{"line_number":75,"context_line":"            filename \u003d \u0027%s_%s.db\u0027 % (hash, epoch)"},{"line_number":76,"context_line":"        else:"},{"line_number":77,"context_line":"            filename \u003d hash_ + \u0027.db\u0027"},{"line_number":78,"context_line":"        db_file \u003d os.path.join(datadir, filename)"}],"source_content_type":"text/x-python","patch_set":1,"id":"b628ec28_90b1b4aa","side":"PARENT","line":75,"updated":"2021-07-07 20:40:21.000000000","message":"that\u0027s an interesting little bug","commit_id":"2117a32b992deef1d7487f1e997abb028a9f56d6"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2b1b8ed3cbb021e4685f2e3882406931780929df","unresolved":true,"context_lines":[{"line_number":4967,"context_line":"        own_shard_range \u003d broker.get_own_shard_range()"},{"line_number":4968,"context_line":"        own_shard_range.update_state(ShardRange.SHRINKING, next(self.ts_iter))"},{"line_number":4969,"context_line":"        own_shard_range.epoch \u003d epoch"},{"line_number":4970,"context_line":"        broker.merge_shard_ranges(own_shard_range)"},{"line_number":4971,"context_line":"        with self._mock_sharder() as sharder:"},{"line_number":4972,"context_line":"            with mock.patch.object("},{"line_number":4973,"context_line":"                    sharder, \u0027_audit_shard_container\u0027) as mocked:"}],"source_content_type":"text/x-python","patch_set":1,"id":"cdcb607f_42345492","line":4970,"updated":"2021-07-07 20:40:21.000000000","message":"it\u0027s not clear to me why the root\u0027s own_shard_range would ever be SHRINKING... shrinking to where?!","commit_id":"9c9c36e2a2d4a6a1ed03bf550916dc214d160ef2"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"5b6ba39994026a1695906c05aa1546dd61c8586a","unresolved":true,"context_lines":[{"line_number":4967,"context_line":"        own_shard_range \u003d broker.get_own_shard_range()"},{"line_number":4968,"context_line":"        own_shard_range.update_state(ShardRange.SHRINKING, next(self.ts_iter))"},{"line_number":4969,"context_line":"        own_shard_range.epoch \u003d epoch"},{"line_number":4970,"context_line":"        broker.merge_shard_ranges(own_shard_range)"},{"line_number":4971,"context_line":"        with self._mock_sharder() as sharder:"},{"line_number":4972,"context_line":"            with mock.patch.object("},{"line_number":4973,"context_line":"                    sharder, \u0027_audit_shard_container\u0027) as mocked:"}],"source_content_type":"text/x-python","patch_set":1,"id":"ab06cc72_904c1cc7","line":4970,"in_reply_to":"cdcb607f_42345492","updated":"2021-07-08 02:37:19.000000000","message":"hmm, yeah.. not sure what I was thinking to be honest. If the shards are SHRINKING the root should be ACTIVE. Or at least, if it\u0027s suppose to have shards SHARDING or SHARDED. Will change.","commit_id":"9c9c36e2a2d4a6a1ed03bf550916dc214d160ef2"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2b1b8ed3cbb021e4685f2e3882406931780929df","unresolved":true,"context_lines":[{"line_number":4993,"context_line":"                    sharder, \u0027_audit_shard_container\u0027) as mocked:"},{"line_number":4994,"context_line":"                sharder._audit_container(broker)"},{"line_number":4995,"context_line":"        lines \u003d sharder.logger.get_lines_for_level(\u0027warning\u0027)"},{"line_number":4996,"context_line":"        assert_reset_epoch_wanting(lines[0])"},{"line_number":4997,"context_line":""},{"line_number":4998,"context_line":"        # restore the epoch"},{"line_number":4999,"context_line":"        own_shard_range.epoch \u003d broker.db_epoch"}],"source_content_type":"text/x-python","patch_set":1,"id":"8202785f_c3d01822","line":4996,"updated":"2021-07-07 20:40:21.000000000","message":"why are you using a closure here?","commit_id":"9c9c36e2a2d4a6a1ed03bf550916dc214d160ef2"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"5b6ba39994026a1695906c05aa1546dd61c8586a","unresolved":true,"context_lines":[{"line_number":4993,"context_line":"                    sharder, \u0027_audit_shard_container\u0027) as mocked:"},{"line_number":4994,"context_line":"                sharder._audit_container(broker)"},{"line_number":4995,"context_line":"        lines \u003d sharder.logger.get_lines_for_level(\u0027warning\u0027)"},{"line_number":4996,"context_line":"        assert_reset_epoch_wanting(lines[0])"},{"line_number":4997,"context_line":""},{"line_number":4998,"context_line":"        # restore the epoch"},{"line_number":4999,"context_line":"        own_shard_range.epoch \u003d broker.db_epoch"}],"source_content_type":"text/x-python","patch_set":1,"id":"59410791_a40e3902","line":4996,"in_reply_to":"8202785f_c3d01822","updated":"2021-07-08 02:37:19.000000000","message":"just copying the pattern used in the rest of the test. I could unwrap it and do the check directly seeing as it\u0027s the only place we\u0027re currently doing the check.","commit_id":"9c9c36e2a2d4a6a1ed03bf550916dc214d160ef2"},{"author":{"_account_id":1179,"name":"Clay Gerrard","email":"clay.gerrard@gmail.com","username":"clay-gerrard"},"change_message_id":"2b1b8ed3cbb021e4685f2e3882406931780929df","unresolved":true,"context_lines":[{"line_number":5006,"context_line":"            for sr in shard_ranges:"},{"line_number":5007,"context_line":"                sr.set_deleted(Timestamp.now())"},{"line_number":5008,"context_line":"            own_shard_range.update_state(state, next(self.ts_iter))"},{"line_number":5009,"context_line":"            broker.merge_shard_ranges(shard_ranges + [own_shard_range])"},{"line_number":5010,"context_line":"            with self._mock_sharder() as sharder:"},{"line_number":5011,"context_line":"                with mock.patch.object("},{"line_number":5012,"context_line":"                        sharder, \u0027_audit_shard_container\u0027) as mocked:"}],"source_content_type":"text/x-python","patch_set":1,"id":"10b66a38_39b192d4","line":5009,"updated":"2021-07-07 20:40:21.000000000","message":"this is a strange situation right?  all shards including own_shard_range are updated to shrunk/sharded?","commit_id":"9c9c36e2a2d4a6a1ed03bf550916dc214d160ef2"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"5b6ba39994026a1695906c05aa1546dd61c8586a","unresolved":true,"context_lines":[{"line_number":5006,"context_line":"            for sr in shard_ranges:"},{"line_number":5007,"context_line":"                sr.set_deleted(Timestamp.now())"},{"line_number":5008,"context_line":"            own_shard_range.update_state(state, next(self.ts_iter))"},{"line_number":5009,"context_line":"            broker.merge_shard_ranges(shard_ranges + [own_shard_range])"},{"line_number":5010,"context_line":"            with self._mock_sharder() as sharder:"},{"line_number":5011,"context_line":"                with mock.patch.object("},{"line_number":5012,"context_line":"                        sharder, \u0027_audit_shard_container\u0027) as mocked:"}],"source_content_type":"text/x-python","patch_set":1,"id":"aa54a0fc_27c44012","line":5009,"in_reply_to":"10b66a38_39b192d4","updated":"2021-07-08 02:37:19.000000000","message":"Yeah I guess. to have all shards as SHRUNK I\u0027d expect the Root to be ACTIVE (ie collapsing). To have all the shards as SHARDED would mean there should be new CREATED/ACTIVE shards.","commit_id":"9c9c36e2a2d4a6a1ed03bf550916dc214d160ef2"}]}
