)]}'
{"doc/source/config/container_server_config.rst":[{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"cbe64530314703aed118c348ea03781b9dca50e9","unresolved":true,"context_lines":[{"line_number":327,"context_line":"                                                      shard containers."},{"line_number":328,"context_line":""},{"line_number":329,"context_line":"shrink_threshold                                      When auto-sharding is"},{"line_number":330,"context_line":"                                                      enabled this defines the"},{"line_number":331,"context_line":"                                                      object count below which"},{"line_number":332,"context_line":"                                                      a \u0027donor\u0027 shard container"},{"line_number":333,"context_line":"                                                      will be considered for"}],"source_content_type":"text/x-rst","patch_set":9,"id":"29b9c938_3572aeb8","line":330,"updated":"2021-05-17 06:38:00.000000000","message":"It\u0027s not only when auto-sharding is enabled anymore is it. s-m-s-r will use it too if you use the config right?","commit_id":"b59de700f9613a363f6760b25d89d52e23f7e834"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"848c74995f5a93b00c7ed0f52d1affae2191fb7e","unresolved":false,"context_lines":[{"line_number":327,"context_line":"                                                      shard containers."},{"line_number":328,"context_line":""},{"line_number":329,"context_line":"shrink_threshold                                      When auto-sharding is"},{"line_number":330,"context_line":"                                                      enabled this defines the"},{"line_number":331,"context_line":"                                                      object count below which"},{"line_number":332,"context_line":"                                                      a \u0027donor\u0027 shard container"},{"line_number":333,"context_line":"                                                      will be considered for"}],"source_content_type":"text/x-rst","patch_set":9,"id":"c197f236_d5aefd44","line":330,"in_reply_to":"29b9c938_3572aeb8","updated":"2021-05-19 14:19:59.000000000","message":"Done","commit_id":"b59de700f9613a363f6760b25d89d52e23f7e834"}],"etc/container-server.conf-sample":[{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"3a71594702ebb63a36009e60936f6d6a4bfca969","unresolved":true,"context_lines":[{"line_number":375,"context_line":"# When auto-sharding is enabled shrink_threshold defines the object count"},{"line_number":376,"context_line":"# below which a \u0027donor\u0027 shard container will be considered for shrinking into"},{"line_number":377,"context_line":"# another \u0027acceptor\u0027 shard container. The default is determined by"},{"line_number":378,"context_line":"# shard_shrink_point. If set, shrink_threshold will take precedence over"},{"line_number":379,"context_line":"# shard_shrink_point."},{"line_number":380,"context_line":"# shrink_threshold \u003d"},{"line_number":381,"context_line":"#"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"2f8b1f35_bf36ced4","line":378,"updated":"2021-03-23 05:30:56.000000000","message":"is the default based of shard_shrink_point to be updgrade safe or incase others have defined a different shard_shrink_point to the default? If so I guess I understand. But seems a little confusing.\n\nSeeing as we are warning shard_shrink_point and shard_shrink_merge_point as deprecated, I wonder if we could also just set the defaults on these new values:\n\n  shrink_threshold \u003d 100000\n  expansion_limit \u003d 750000\n\nAnd then make it clear in the changelog that there will be upgrade impact","commit_id":"9a73c6a7e7566e77e810c5da0278f53a449c166b"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"e7338b5e8abafa350dd3e55c70f2f2771e000b28","unresolved":true,"context_lines":[{"line_number":375,"context_line":"# When auto-sharding is enabled shrink_threshold defines the object count"},{"line_number":376,"context_line":"# below which a \u0027donor\u0027 shard container will be considered for shrinking into"},{"line_number":377,"context_line":"# another \u0027acceptor\u0027 shard container. The default is determined by"},{"line_number":378,"context_line":"# shard_shrink_point. If set, shrink_threshold will take precedence over"},{"line_number":379,"context_line":"# shard_shrink_point."},{"line_number":380,"context_line":"# shrink_threshold \u003d"},{"line_number":381,"context_line":"#"}],"source_content_type":"application/octet-stream","patch_set":5,"id":"f643e97c_082cdbbd","line":378,"in_reply_to":"2f8b1f35_bf36ced4","updated":"2021-03-23 12:50:20.000000000","message":"I\u0027m playing it safe w.r.t. upgrade. Also, any probe test environment likely has a modified shard_container_threshold and then relies on the percent values so would need modifying if we defaulted to absolute values.\n\nThe percent values are useful in some ways. Maybe I should not say they are deprecated, just that there is an alternative??? Maybe I am being too conservative w.r.t. upgrade.","commit_id":"9a73c6a7e7566e77e810c5da0278f53a449c166b"}],"swift/container/sharder.py":[{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"3a71594702ebb63a36009e60936f6d6a4bfca969","unresolved":true,"context_lines":[{"line_number":517,"context_line":"            raise a ValueError if the config value if not valid."},{"line_number":518,"context_line":"        :param conf_key: key to lookup value in config dict; if None then"},{"line_number":519,"context_line":"            ``key`` will be used."},{"line_number":520,"context_line":"        :param required: If True the it is an error if ``conf_key`` is not"},{"line_number":521,"context_line":"            found in the config. Default is True."},{"line_number":522,"context_line":"        :raises: ValueError if the value read from config is invalid."},{"line_number":523,"context_line":"        :raises: KeyError if the conf_key is not in the config and"}],"source_content_type":"text/x-python","patch_set":5,"id":"f0eb42ec_261dc0eb","line":520,"range":{"start_line":520,"start_character":33,"end_line":520,"end_character":36},"updated":"2021-03-23 05:30:56.000000000","message":"then","commit_id":"9a73c6a7e7566e77e810c5da0278f53a449c166b"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"d3a4ae125769cd55dd7bac41b744c985e2158924","unresolved":false,"context_lines":[{"line_number":517,"context_line":"            raise a ValueError if the config value if not valid."},{"line_number":518,"context_line":"        :param conf_key: key to lookup value in config dict; if None then"},{"line_number":519,"context_line":"            ``key`` will be used."},{"line_number":520,"context_line":"        :param required: If True the it is an error if ``conf_key`` is not"},{"line_number":521,"context_line":"            found in the config. Default is True."},{"line_number":522,"context_line":"        :raises: ValueError if the value read from config is invalid."},{"line_number":523,"context_line":"        :raises: KeyError if the conf_key is not in the config and"}],"source_content_type":"text/x-python","patch_set":5,"id":"fb5d95d0_2e6ac03b","line":520,"range":{"start_line":520,"start_character":33,"end_line":520,"end_character":36},"in_reply_to":"f0eb42ec_261dc0eb","updated":"2021-04-01 10:45:33.000000000","message":"Done","commit_id":"9a73c6a7e7566e77e810c5da0278f53a449c166b"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"060a4d88c2265aabef7327085f8450b851ad6d27","unresolved":true,"context_lines":[{"line_number":622,"context_line":"        \"\"\""},{"line_number":623,"context_line":"        conf_key \u003d conf_key or key"},{"line_number":624,"context_line":"        try:"},{"line_number":625,"context_line":"            setattr(namespace, key, validator(conf.get(conf_key)))"},{"line_number":626,"context_line":"        except ValueError as err:"},{"line_number":627,"context_line":"            raise ValueError(\u0027Error setting %s: %s\u0027 % (conf_key, err))"},{"line_number":628,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"01afd22f_bb53c8ca","side":"PARENT","line":625,"range":{"start_line":625,"start_character":46,"end_line":625,"end_character":64},"updated":"2021-05-18 23:06:13.000000000","message":"Huh. The so default behavior used to be required\u003dFalse... Should the previous patch have had\n\n conf[conf_key]\n\ninstead?","commit_id":"3ff82e0ebc19d4ee1c20c9aadcc43f03e7af40c0"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"848c74995f5a93b00c7ed0f52d1affae2191fb7e","unresolved":true,"context_lines":[{"line_number":622,"context_line":"        \"\"\""},{"line_number":623,"context_line":"        conf_key \u003d conf_key or key"},{"line_number":624,"context_line":"        try:"},{"line_number":625,"context_line":"            setattr(namespace, key, validator(conf.get(conf_key)))"},{"line_number":626,"context_line":"        except ValueError as err:"},{"line_number":627,"context_line":"            raise ValueError(\u0027Error setting %s: %s\u0027 % (conf_key, err))"},{"line_number":628,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"dfb7e686_b261d4f6","side":"PARENT","line":625,"range":{"start_line":625,"start_character":46,"end_line":625,"end_character":64},"in_reply_to":"01afd22f_bb53c8ca","updated":"2021-05-19 14:19:59.000000000","message":"yes, good catch","commit_id":"3ff82e0ebc19d4ee1c20c9aadcc43f03e7af40c0"},{"author":{"_account_id":15343,"name":"Tim Burke","email":"tburke@nvidia.com","username":"tburke"},"change_message_id":"060a4d88c2265aabef7327085f8450b851ad6d27","unresolved":true,"context_lines":[{"line_number":649,"context_line":"    for k, default in DEFAULT_SHARDER_CONF.items():"},{"line_number":650,"context_line":"        if k in (\u0027shrink_threshold\u0027, \u0027expansion_limit\u0027):"},{"line_number":651,"context_line":"            # the defaults for these keys are defined by the legacy percent"},{"line_number":652,"context_line":"            # values of shard_shrink_point and shard_shrink_merge_point"},{"line_number":653,"context_line":"            continue"},{"line_number":654,"context_line":"        conf.setdefault(k, default)"},{"line_number":655,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"6cfb4356_c108e099","line":652,"updated":"2021-05-18 23:06:13.000000000","message":"Right; so if we ever expose a rows_per_shard option, it should get added to this list.","commit_id":"e7381b8a18792c65c311bca2bd90636fd2c58238"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"848c74995f5a93b00c7ed0f52d1affae2191fb7e","unresolved":true,"context_lines":[{"line_number":649,"context_line":"    for k, default in DEFAULT_SHARDER_CONF.items():"},{"line_number":650,"context_line":"        if k in (\u0027shrink_threshold\u0027, \u0027expansion_limit\u0027):"},{"line_number":651,"context_line":"            # the defaults for these keys are defined by the legacy percent"},{"line_number":652,"context_line":"            # values of shard_shrink_point and shard_shrink_merge_point"},{"line_number":653,"context_line":"            continue"},{"line_number":654,"context_line":"        conf.setdefault(k, default)"},{"line_number":655,"context_line":""}],"source_content_type":"text/x-python","patch_set":10,"id":"52630f29_35d84cb6","line":652,"in_reply_to":"6cfb4356_c108e099","updated":"2021-05-19 14:19:59.000000000","message":"hmmm, probably","commit_id":"e7381b8a18792c65c311bca2bd90636fd2c58238"}]}
