)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"9adbc6d226e259cfd410744b7a34236c996a52a2","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Follow up for affinity config per policy"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This is for https://review.openstack.org/#/c/448240"},{"line_number":10,"context_line":"and it may be good to be cherry pick\u0027ed into"},{"line_number":11,"context_line":"https://review.openstack.org/#/c/466952"},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ff0f0b1f_9007daca","line":9,"range":{"start_line":9,"start_character":12,"end_line":9,"end_character":51},"updated":"2017-05-25 08:55:31.000000000","message":"IDK, should this be Related-Change: tag with a change ID rather than a gerrit url?","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"9adbc6d226e259cfd410744b7a34236c996a52a2","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Follow up for affinity config per policy"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This is for https://review.openstack.org/#/c/448240"},{"line_number":10,"context_line":"and it may be good to be cherry pick\u0027ed into"},{"line_number":11,"context_line":"https://review.openstack.org/#/c/466952"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This changes:"},{"line_number":14,"context_line":"- Add assertions for write_affinity values in load_app tests"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ff0f0b1f_90d59a1e","line":11,"range":{"start_line":10,"start_character":0,"end_line":11,"end_character":39},"updated":"2017-05-25 08:55:31.000000000","message":"I think this should be removed before merging - maybe best said in a comment rather than the commit - unless the intention is to definitely not merge this patch?","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"c34a0902075c80250087fc06db8a6374410a31e0","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Follow up for affinity config per policy"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This is for https://review.openstack.org/#/c/448240"},{"line_number":10,"context_line":"and it may be good to be cherry pick\u0027ed into"},{"line_number":11,"context_line":"https://review.openstack.org/#/c/466952"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This changes:"},{"line_number":14,"context_line":"- Add assertions for write_affinity values in load_app tests"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"7f231b9d_953770b1","line":11,"range":{"start_line":10,"start_character":19,"end_line":11,"end_character":39},"updated":"2017-06-13 10:55:30.000000000","message":"the other patch has merged so this should be removed","commit_id":"55b3a008618f855cc22d983bff240929f6b95e8e"}],"test/unit/proxy/test_server.py":[{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"9adbc6d226e259cfd410744b7a34236c996a52a2","unresolved":false,"context_lines":[{"line_number":1349,"context_line":"        \"\"\""},{"line_number":1350,"context_line":"        expected_default \u003d {\"read_affinity\": \"\","},{"line_number":1351,"context_line":"                            \"sorting_method\": \"shuffle\","},{"line_number":1352,"context_line":"                            \"write_affinity\": \"\","},{"line_number":1353,"context_line":"                            \"write_affinity_node_count\": 6}"},{"line_number":1354,"context_line":"        exp_conf \u003d {None: expected_default,"},{"line_number":1355,"context_line":"                    POLICIES[0]: expected_default,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff0f0b1f_90011a08","line":1352,"updated":"2017-05-25 08:55:31.000000000","message":"ok. As background, write_affinity was not previously include d in the expected attrs because it only became an attribute of OverrideConf only in the last patchset of [1] to support a __repr__ method. The exp_is_local checks are intended to verify the write-affinity is correct.\n\nBut no harm adding it here.\n\n[1] https://review.openstack.org/#/c/448240","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"9adbc6d226e259cfd410744b7a34236c996a52a2","unresolved":false,"context_lines":[{"line_number":1480,"context_line":"        read_affinity \u003d r1\u003d1"},{"line_number":1481,"context_line":"        \"\"\""},{"line_number":1482,"context_line":"        exp_conf \u003d {None: {\"read_affinity\": \"\","},{"line_number":1483,"context_line":"                           \"write_affinity\": \"\","},{"line_number":1484,"context_line":"                           \"sorting_method\": \"timing\"},"},{"line_number":1485,"context_line":"                    POLICIES[0]: {\"read_affinity\": \"r1\u003d100\","},{"line_number":1486,"context_line":"                                  \"write_affinity\": \"\","}],"source_content_type":"text/x-python","patch_set":1,"id":"ff0f0b1f_1043ca43","line":1483,"updated":"2017-05-25 08:55:31.000000000","message":"nit: these exp_conf only included read_affinity and sorting_method because the test primarily targets sorting_method, and write_affinity is covered in other tests.\n\nAdding write_affinity is fine, but for consistency we should then add \"write_affinity_node_count\" too?","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"},{"author":{"_account_id":4608,"name":"Kota Tsuyuzaki","email":"bloodeagle40234@gmail.com","username":"tsuyuzaki-kota"},"change_message_id":"3b0bbc0433c49d0eee684d8987280058b213132d","unresolved":false,"context_lines":[{"line_number":1480,"context_line":"        read_affinity \u003d r1\u003d1"},{"line_number":1481,"context_line":"        \"\"\""},{"line_number":1482,"context_line":"        exp_conf \u003d {None: {\"read_affinity\": \"\","},{"line_number":1483,"context_line":"                           \"write_affinity\": \"\","},{"line_number":1484,"context_line":"                           \"sorting_method\": \"timing\"},"},{"line_number":1485,"context_line":"                    POLICIES[0]: {\"read_affinity\": \"r1\u003d100\","},{"line_number":1486,"context_line":"                                  \"write_affinity\": \"\","}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_544588b2","line":1483,"in_reply_to":"ff0f0b1f_1043ca43","updated":"2017-06-12 09:55:53.000000000","message":"ok, I\u0027ll remove write_affinity here. It seems consistent with test condiditon.","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"9adbc6d226e259cfd410744b7a34236c996a52a2","unresolved":false,"context_lines":[{"line_number":1569,"context_line":"        read_affinity \u003d r1\u003d1"},{"line_number":1570,"context_line":"        \"\"\""},{"line_number":1571,"context_line":"        exp_conf \u003d {None: {\"read_affinity\": \"r2\u003d10\","},{"line_number":1572,"context_line":"                           \"write_affinity\": \"\","},{"line_number":1573,"context_line":"                           \"sorting_method\": \"timing\"},"},{"line_number":1574,"context_line":"                    POLICIES[0]: {\"read_affinity\": \"r1\u003d100\","},{"line_number":1575,"context_line":"                                  \"write_affinity\": \"\","}],"source_content_type":"text/x-python","patch_set":1,"id":"ff0f0b1f_506ee2c8","line":1572,"updated":"2017-05-25 08:55:31.000000000","message":"nit: ditto here, if we add write_affinity then add \"write_affinity_node_count\" too","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"},{"author":{"_account_id":4608,"name":"Kota Tsuyuzaki","email":"bloodeagle40234@gmail.com","username":"tsuyuzaki-kota"},"change_message_id":"3b0bbc0433c49d0eee684d8987280058b213132d","unresolved":false,"context_lines":[{"line_number":1569,"context_line":"        read_affinity \u003d r1\u003d1"},{"line_number":1570,"context_line":"        \"\"\""},{"line_number":1571,"context_line":"        exp_conf \u003d {None: {\"read_affinity\": \"r2\u003d10\","},{"line_number":1572,"context_line":"                           \"write_affinity\": \"\","},{"line_number":1573,"context_line":"                           \"sorting_method\": \"timing\"},"},{"line_number":1574,"context_line":"                    POLICIES[0]: {\"read_affinity\": \"r1\u003d100\","},{"line_number":1575,"context_line":"                                  \"write_affinity\": \"\","}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_f48254c8","line":1572,"in_reply_to":"ff0f0b1f_506ee2c8","updated":"2017-06-12 09:55:53.000000000","message":"Done","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"9adbc6d226e259cfd410744b7a34236c996a52a2","unresolved":false,"context_lines":[{"line_number":1615,"context_line":"        lines \u003d app.logger.get_lines_for_level(\u0027warning\u0027)"},{"line_number":1616,"context_line":"        self.assertIn("},{"line_number":1617,"context_line":"            \"sorting_method is set to \u0027timing\u0027, not \u0027affinity\u0027\", lines[0])"},{"line_number":1618,"context_line":"        self.assertIn(\u0027policy 0 (nulo)\u0027, lines[0])"},{"line_number":1619,"context_line":""},{"line_number":1620,"context_line":"    def test_per_policy_conf_with_unknown_policy(self):"},{"line_number":1621,"context_line":"        # verify that unknown policy section is warned about but doesn\u0027t break"}],"source_content_type":"text/x-python","patch_set":1,"id":"ff0f0b1f_f094d68c","line":1618,"updated":"2017-05-25 08:55:31.000000000","message":"nit: assert there are no other warning lines\n\n  self.assertFalse(lines[1:])","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"0c508d5e6bd8a95fb6d6906529044bd5d9a6ea12","unresolved":false,"context_lines":[{"line_number":1615,"context_line":"        lines \u003d app.logger.get_lines_for_level(\u0027warning\u0027)"},{"line_number":1616,"context_line":"        self.assertIn("},{"line_number":1617,"context_line":"            \"sorting_method is set to \u0027timing\u0027, not \u0027affinity\u0027\", lines[0])"},{"line_number":1618,"context_line":"        self.assertIn(\u0027policy 0 (nulo)\u0027, lines[0])"},{"line_number":1619,"context_line":""},{"line_number":1620,"context_line":"    def test_per_policy_conf_with_unknown_policy(self):"},{"line_number":1621,"context_line":"        # verify that unknown policy section is warned about but doesn\u0027t break"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_9231c60e","line":1618,"in_reply_to":"7f231b9d_146830f3","updated":"2017-06-13 10:50:56.000000000","message":"OIC, yes there will be two warnings because the proxy-server app is actually created twice here [1] - the first time is to allow opportunity to modify the pipeline, then the second time is while creating the pipeline.\n\n[1] https://github.com/openstack/swift/blob/5ecf828b17cf01291ad5c9fafea3c7ddb621af18/swift/common/wsgi.py#L391-L396","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"},{"author":{"_account_id":4608,"name":"Kota Tsuyuzaki","email":"bloodeagle40234@gmail.com","username":"tsuyuzaki-kota"},"change_message_id":"3b0bbc0433c49d0eee684d8987280058b213132d","unresolved":false,"context_lines":[{"line_number":1615,"context_line":"        lines \u003d app.logger.get_lines_for_level(\u0027warning\u0027)"},{"line_number":1616,"context_line":"        self.assertIn("},{"line_number":1617,"context_line":"            \"sorting_method is set to \u0027timing\u0027, not \u0027affinity\u0027\", lines[0])"},{"line_number":1618,"context_line":"        self.assertIn(\u0027policy 0 (nulo)\u0027, lines[0])"},{"line_number":1619,"context_line":""},{"line_number":1620,"context_line":"    def test_per_policy_conf_with_unknown_policy(self):"},{"line_number":1621,"context_line":"        # verify that unknown policy section is warned about but doesn\u0027t break"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_146830f3","line":1618,"in_reply_to":"ff0f0b1f_f094d68c","updated":"2017-06-12 09:55:53.000000000","message":"I like that idea :-)\n\nHowever, the reason I didn\u0027t do like that is the assertion didn\u0027t pass.\n\nI looks like the warning message appears twice. It seems odd to me bud I\u0027m not entirely sure if that is a bug or not.","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"9adbc6d226e259cfd410744b7a34236c996a52a2","unresolved":false,"context_lines":[{"line_number":1647,"context_line":"        read_affinity \u003d r1\u003d1"},{"line_number":1648,"context_line":"        \"\"\""},{"line_number":1649,"context_line":"        exp_conf \u003d {None: {\"read_affinity\": \"\","},{"line_number":1650,"context_line":"                           \"write_affinity\": \"\","},{"line_number":1651,"context_line":"                           \"sorting_method\": \"affinity\"},"},{"line_number":1652,"context_line":"                    POLICIES[0]: {\"read_affinity\": \"\","},{"line_number":1653,"context_line":"                                  \"write_affinity\": \"\","}],"source_content_type":"text/x-python","patch_set":1,"id":"ff0f0b1f_d0bd5202","line":1650,"updated":"2017-05-25 08:55:31.000000000","message":"ditto nit: also add \"write_affinity_node_count\"","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"},{"author":{"_account_id":4608,"name":"Kota Tsuyuzaki","email":"bloodeagle40234@gmail.com","username":"tsuyuzaki-kota"},"change_message_id":"3b0bbc0433c49d0eee684d8987280058b213132d","unresolved":false,"context_lines":[{"line_number":1647,"context_line":"        read_affinity \u003d r1\u003d1"},{"line_number":1648,"context_line":"        \"\"\""},{"line_number":1649,"context_line":"        exp_conf \u003d {None: {\"read_affinity\": \"\","},{"line_number":1650,"context_line":"                           \"write_affinity\": \"\","},{"line_number":1651,"context_line":"                           \"sorting_method\": \"affinity\"},"},{"line_number":1652,"context_line":"                    POLICIES[0]: {\"read_affinity\": \"\","},{"line_number":1653,"context_line":"                                  \"write_affinity\": \"\","}],"source_content_type":"text/x-python","patch_set":1,"id":"7f231b9d_f46c9409","line":1650,"in_reply_to":"ff0f0b1f_d0bd5202","updated":"2017-06-12 09:55:53.000000000","message":"Done (remove write_affinity because no setting exists)","commit_id":"7bcbb746b4d13899125c532ec55309a3e6561a2a"}]}
