)]}'
{"test/unit/common/ring/test_builder.py":[{"author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"change_message_id":"0f09ff055b3a6ee45801747cc40eb2592b3e7a65","unresolved":false,"context_lines":[{"line_number":675,"context_line":"                          {0: 192, 1: 192, 2: 192, 3: 192})"},{"line_number":676,"context_line":""},{"line_number":677,"context_line":"    def test_region_fullness_with_unbalanceable_ring(self):"},{"line_number":678,"context_line":"        rb \u003d ring.RingBuilder(8, 3, 1)"},{"line_number":679,"context_line":"        rb.add_dev({\u0027id\u0027: 0, \u0027region\u0027: 0, \u0027zone\u0027: 0, \u0027weight\u0027: 2,"},{"line_number":680,"context_line":"                    \u0027ip\u0027: \u0027127.0.0.1\u0027, \u0027port\u0027: 10000, \u0027device\u0027: \u0027sda1\u0027})"},{"line_number":681,"context_line":"        rb.add_dev({\u0027id\u0027: 1, \u0027region\u0027: 0, \u0027zone\u0027: 1, \u0027weight\u0027: 2,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1abeadc6_a5167cef","line":678,"updated":"2014-08-20 07:04:18.000000000","message":"Could you set the min_part_hours to 0?","commit_id":"505793edbb8e8fd4622eff7d736e791cc1ab0fa8"},{"author":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"change_message_id":"4879ec04e2a123354a0934a5781e95dd41138b50","unresolved":false,"context_lines":[{"line_number":675,"context_line":"                          {0: 192, 1: 192, 2: 192, 3: 192})"},{"line_number":676,"context_line":""},{"line_number":677,"context_line":"    def test_region_fullness_with_unbalanceable_ring(self):"},{"line_number":678,"context_line":"        rb \u003d ring.RingBuilder(8, 3, 1)"},{"line_number":679,"context_line":"        rb.add_dev({\u0027id\u0027: 0, \u0027region\u0027: 0, \u0027zone\u0027: 0, \u0027weight\u0027: 2,"},{"line_number":680,"context_line":"                    \u0027ip\u0027: \u0027127.0.0.1\u0027, \u0027port\u0027: 10000, \u0027device\u0027: \u0027sda1\u0027})"},{"line_number":681,"context_line":"        rb.add_dev({\u0027id\u0027: 1, \u0027region\u0027: 0, \u0027zone\u0027: 1, \u0027weight\u0027: 2,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1abeadc6_7b04ea17","line":678,"in_reply_to":"1abeadc6_a5167cef","updated":"2014-08-20 20:01:18.000000000","message":"I prefer to call pretend_min_part_hours_passed; setting min_part_hours to 0 can let multiple replicas of a partition move within a single rebalance, which is less realistic.\n\nIn this case, only one replica moves, so it\u0027ll work out the same.","commit_id":"505793edbb8e8fd4622eff7d736e791cc1ab0fa8"},{"author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"change_message_id":"0f09ff055b3a6ee45801747cc40eb2592b3e7a65","unresolved":false,"context_lines":[{"line_number":680,"context_line":"                    \u0027ip\u0027: \u0027127.0.0.1\u0027, \u0027port\u0027: 10000, \u0027device\u0027: \u0027sda1\u0027})"},{"line_number":681,"context_line":"        rb.add_dev({\u0027id\u0027: 1, \u0027region\u0027: 0, \u0027zone\u0027: 1, \u0027weight\u0027: 2,"},{"line_number":682,"context_line":"                    \u0027ip\u0027: \u0027127.0.0.1\u0027, \u0027port\u0027: 10001, \u0027device\u0027: \u0027sda1\u0027})"},{"line_number":683,"context_line":""},{"line_number":684,"context_line":"        rb.add_dev({\u0027id\u0027: 2, \u0027region\u0027: 1, \u0027zone\u0027: 0, \u0027weight\u0027: 1,"},{"line_number":685,"context_line":"                    \u0027ip\u0027: \u0027127.0.0.1\u0027, \u0027port\u0027: 10003, \u0027device\u0027: \u0027sda1\u0027})"},{"line_number":686,"context_line":"        rb.add_dev({\u0027id\u0027: 3, \u0027region\u0027: 1, \u0027zone\u0027: 1, \u0027weight\u0027: 1,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1abeadc6_255c2c25","line":683,"updated":"2014-08-20 07:04:18.000000000","message":"And do a rb.rebalance(seed\u003d2) here?\n\nFor example, I start with a ring with only a single region, rebalance this, use it in production and add another region later on.","commit_id":"505793edbb8e8fd4622eff7d736e791cc1ab0fa8"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"11cc5a05d607552005ba2f0f136fe569785230c1","unresolved":false,"context_lines":[{"line_number":715,"context_line":"        # there\u0027s not enough room in r1 for every partition to have a replica"},{"line_number":716,"context_line":"        # in it, so only 64 assignments occur in r1"},{"line_number":717,"context_line":"        population_by_region \u003d self._get_population_by_region(rb)"},{"line_number":718,"context_line":"        self.assertEquals(population_by_region, {0: 682, 1: 86})"},{"line_number":719,"context_line":""},{"line_number":720,"context_line":"        # and since there\u0027s not enough room, subsequent rebalances will not"},{"line_number":721,"context_line":"        # cause additional assignments to r1"}],"source_content_type":"text/x-python","patch_set":2,"id":"1abeadc6_6304334a","line":718,"updated":"2014-08-21 05:51:39.000000000","message":"Then how come the test is finding 86 assignments in region 1? Should the 64 in the commend actually be 86? Or am missing something?","commit_id":"c835a4211ff2da6db034525a7107d33130496925"},{"author":{"_account_id":6968,"name":"Christian Schwede","email":"cschwede@nvidia.com","username":"cschwede"},"change_message_id":"2f3f4f5030c4f71ea0d91c7a3d8a0906e3e37db6","unresolved":false,"context_lines":[{"line_number":715,"context_line":"        # there\u0027s not enough room in r1 for every partition to have a replica"},{"line_number":716,"context_line":"        # in it, so only 64 assignments occur in r1"},{"line_number":717,"context_line":"        population_by_region \u003d self._get_population_by_region(rb)"},{"line_number":718,"context_line":"        self.assertEquals(population_by_region, {0: 682, 1: 86})"},{"line_number":719,"context_line":""},{"line_number":720,"context_line":"        # and since there\u0027s not enough room, subsequent rebalances will not"},{"line_number":721,"context_line":"        # cause additional assignments to r1"}],"source_content_type":"text/x-python","patch_set":2,"id":"1abeadc6_e78dae7d","line":718,"in_reply_to":"1abeadc6_6304334a","updated":"2014-08-21 06:11:43.000000000","message":"I think 86 is correct: there are 768 partitions total, region 0 has a total weight of 4, region 1 of 0.5 -\u003e 768*4.5/0.5 \u003d 85.333... partitions should be in region 1.","commit_id":"c835a4211ff2da6db034525a7107d33130496925"},{"author":{"_account_id":2622,"name":"Samuel Merritt","email":"spam+launchpad@andcheese.org","username":"torgomatic"},"change_message_id":"66a8b83c290291227ec6c9d551f405ba12ca2458","unresolved":false,"context_lines":[{"line_number":715,"context_line":"        # there\u0027s not enough room in r1 for every partition to have a replica"},{"line_number":716,"context_line":"        # in it, so only 64 assignments occur in r1"},{"line_number":717,"context_line":"        population_by_region \u003d self._get_population_by_region(rb)"},{"line_number":718,"context_line":"        self.assertEquals(population_by_region, {0: 682, 1: 86})"},{"line_number":719,"context_line":""},{"line_number":720,"context_line":"        # and since there\u0027s not enough room, subsequent rebalances will not"},{"line_number":721,"context_line":"        # cause additional assignments to r1"}],"source_content_type":"text/x-python","patch_set":2,"id":"1abeadc6_e2474a75","line":718,"in_reply_to":"1abeadc6_e78dae7d","updated":"2014-08-21 15:57:32.000000000","message":"I had numbers making it 64 at one point while writing the test, then I changed them and didn\u0027t update the comment. Will fix momentarily.","commit_id":"c835a4211ff2da6db034525a7107d33130496925"}]}
