)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"59c27ad928252738d455400507c8a6baa23b12c0","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not"},{"line_number":10,"context_line":"in group\u0027s members\u0027 hosts, So the group collect its memebers\u0027 hosts"},{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_311e495f","line":9,"range":{"start_line":9,"start_character":30,"end_line":9,"end_character":36},"updated":"2016-03-31 15:22:27.000000000","message":"selects","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"9299a064417170ea74c121e1fa206a902f25b363","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not"},{"line_number":10,"context_line":"in group\u0027s members\u0027 hosts, So the group collect its memebers\u0027 hosts"},{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_09714444","line":9,"range":{"start_line":9,"start_character":30,"end_line":9,"end_character":36},"in_reply_to":"ba0121b8_311e495f","updated":"2016-04-01 02:08:09.000000000","message":"Done","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"59c27ad928252738d455400507c8a6baa23b12c0","unresolved":false,"context_lines":[{"line_number":7,"context_line":"fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not"},{"line_number":10,"context_line":"in group\u0027s members\u0027 hosts, So the group collect its memebers\u0027 hosts"},{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_b149b962","line":10,"range":{"start_line":10,"start_character":40,"end_line":10,"end_character":47},"updated":"2016-03-31 15:22:27.000000000","message":"collects","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"59c27ad928252738d455400507c8a6baa23b12c0","unresolved":false,"context_lines":[{"line_number":7,"context_line":"fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not"},{"line_number":10,"context_line":"in group\u0027s members\u0027 hosts, So the group collect its memebers\u0027 hosts"},{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_f6196789","line":10,"range":{"start_line":10,"start_character":52,"end_line":10,"end_character":60},"updated":"2016-03-31 15:22:27.000000000","message":"nit: s/memebers\u0027/members\u0027/","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"59c27ad928252738d455400507c8a6baa23b12c0","unresolved":false,"context_lines":[{"line_number":7,"context_line":"fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not"},{"line_number":10,"context_line":"in group\u0027s members\u0027 hosts, So the group collect its memebers\u0027 hosts"},{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_d1538d15","line":10,"range":{"start_line":10,"start_character":25,"end_line":10,"end_character":26},"updated":"2016-03-31 15:22:27.000000000","message":"s/,/./","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"9299a064417170ea74c121e1fa206a902f25b363","unresolved":false,"context_lines":[{"line_number":7,"context_line":"fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not"},{"line_number":10,"context_line":"in group\u0027s members\u0027 hosts, So the group collect its memebers\u0027 hosts"},{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_e97a10bc","line":10,"range":{"start_line":10,"start_character":40,"end_line":10,"end_character":47},"in_reply_to":"ba0121b8_b149b962","updated":"2016-04-01 02:08:09.000000000","message":"Thank you for the recommendation.","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"1cfed41a50f74eeb8fbb528816a87b5b9717aba5","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not"},{"line_number":10,"context_line":"in group\u0027s members\u0027 hosts, So the group collect its memebers\u0027 hosts"},{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"One instance is not has anti-affinity with itself.  Current code has"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_7c7b8328","line":11,"range":{"start_line":11,"start_character":0,"end_line":11,"end_character":1},"updated":"2016-03-31 12:58:23.000000000","message":"delete this space","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"9299a064417170ea74c121e1fa206a902f25b363","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not"},{"line_number":10,"context_line":"in group\u0027s members\u0027 hosts, So the group collect its memebers\u0027 hosts"},{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"One instance is not has anti-affinity with itself.  Current code has"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_29c4083e","line":11,"range":{"start_line":11,"start_character":0,"end_line":11,"end_character":1},"in_reply_to":"ba0121b8_7c7b8328","updated":"2016-04-01 02:08:09.000000000","message":"Done","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"59c27ad928252738d455400507c8a6baa23b12c0","unresolved":false,"context_lines":[{"line_number":7,"context_line":"fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not"},{"line_number":10,"context_line":"in group\u0027s members\u0027 hosts, So the group collect its memebers\u0027 hosts"},{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"One instance is not has anti-affinity with itself.  Current code has"},{"line_number":15,"context_line":"problem when it select hosts, scheduler would not select instnace\u0027host"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_317ac977","line":12,"range":{"start_line":10,"start_character":27,"end_line":12,"end_character":9},"updated":"2016-03-31 15:22:27.000000000","message":"Sorry I didn\u0027t get what you want to say here.","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"59c27ad928252738d455400507c8a6baa23b12c0","unresolved":false,"context_lines":[{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not"},{"line_number":10,"context_line":"in group\u0027s members\u0027 hosts, So the group collect its memebers\u0027 hosts"},{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"One instance is not has anti-affinity with itself.  Current code has"},{"line_number":15,"context_line":"problem when it select hosts, scheduler would not select instnace\u0027host"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_b11b7972","line":12,"range":{"start_line":12,"start_character":0,"end_line":12,"end_character":8},"updated":"2016-03-31 15:22:27.000000000","message":"nit: s/instnace/instance/","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"9299a064417170ea74c121e1fa206a902f25b363","unresolved":false,"context_lines":[{"line_number":7,"context_line":"fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not"},{"line_number":10,"context_line":"in group\u0027s members\u0027 hosts, So the group collect its memebers\u0027 hosts"},{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"One instance is not has anti-affinity with itself.  Current code has"},{"line_number":15,"context_line":"problem when it select hosts, scheduler would not select instnace\u0027host"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_c9c8ec57","line":12,"range":{"start_line":10,"start_character":27,"end_line":12,"end_character":9},"in_reply_to":"ba0121b8_317ac977","updated":"2016-04-01 02:08:09.000000000","message":"Done","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"1cfed41a50f74eeb8fbb528816a87b5b9717aba5","unresolved":false,"context_lines":[{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"One instance is not has anti-affinity with itself.  Current code has"},{"line_number":15,"context_line":"problem when it select hosts, scheduler would not select instnace\u0027host"},{"line_number":16,"context_line":"after ServerGroupAntiAffinityFilter. It can lead to resize instnace to"},{"line_number":17,"context_line":"the same host is not successful when this instnace in a Anti-Affinity"},{"line_number":18,"context_line":"gourp."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"I modify filter_properties[\u0027group_hosts\u0027], it\u0027s hosts is not through"},{"line_number":21,"context_line":"instance which is need to select a host."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_3c0f4b89","line":18,"range":{"start_line":14,"start_character":0,"end_line":18,"end_character":6},"updated":"2016-03-31 12:58:23.000000000","message":"An instance does not have anti-affinity with itself, The current code has problem when select hosts, the instance\u0027s current host will be filtered out by ServerGroupAntiAffinityFilte. This can lead to failure when resize an instance with anti-affinity group to the same host.","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"9299a064417170ea74c121e1fa206a902f25b363","unresolved":false,"context_lines":[{"line_number":11,"context_line":" could traverse its instance member which has anti-affinity with this"},{"line_number":12,"context_line":"instnace."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"One instance is not has anti-affinity with itself.  Current code has"},{"line_number":15,"context_line":"problem when it select hosts, scheduler would not select instnace\u0027host"},{"line_number":16,"context_line":"after ServerGroupAntiAffinityFilter. It can lead to resize instnace to"},{"line_number":17,"context_line":"the same host is not successful when this instnace in a Anti-Affinity"},{"line_number":18,"context_line":"gourp."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"I modify filter_properties[\u0027group_hosts\u0027], it\u0027s hosts is not through"},{"line_number":21,"context_line":"instance which is need to select a host."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_6966002b","line":18,"range":{"start_line":14,"start_character":0,"end_line":18,"end_character":6},"in_reply_to":"ba0121b8_3c0f4b89","updated":"2016-04-01 02:08:09.000000000","message":"Thank you for your help.","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"1cfed41a50f74eeb8fbb528816a87b5b9717aba5","unresolved":false,"context_lines":[{"line_number":17,"context_line":"the same host is not successful when this instnace in a Anti-Affinity"},{"line_number":18,"context_line":"gourp."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"I modify filter_properties[\u0027group_hosts\u0027], it\u0027s hosts is not through"},{"line_number":21,"context_line":"instance which is need to select a host."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Change-Id: Ie016f59f5b98bb9c70b3e33556bd747f79fc77bd"},{"line_number":24,"context_line":"Closes-Bug:#1558532"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_5c583f8a","line":21,"range":{"start_line":20,"start_character":0,"end_line":21,"end_character":40},"updated":"2016-03-31 12:58:23.000000000","message":"In this patch, filter_properties[\u0027group_hosts\u0027] is modified, it\u0027s hosts is not through instance which is need to select a host.","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"9299a064417170ea74c121e1fa206a902f25b363","unresolved":false,"context_lines":[{"line_number":17,"context_line":"the same host is not successful when this instnace in a Anti-Affinity"},{"line_number":18,"context_line":"gourp."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"I modify filter_properties[\u0027group_hosts\u0027], it\u0027s hosts is not through"},{"line_number":21,"context_line":"instance which is need to select a host."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Change-Id: Ie016f59f5b98bb9c70b3e33556bd747f79fc77bd"},{"line_number":24,"context_line":"Closes-Bug:#1558532"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_09a5c445","line":21,"range":{"start_line":20,"start_character":0,"end_line":21,"end_character":40},"in_reply_to":"ba0121b8_5c583f8a","updated":"2016-04-01 02:08:09.000000000","message":"Done","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"7f114fe08344b09a45a9041e6695fc0fd09b71e9","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not in group\u0027s"},{"line_number":10,"context_line":"memebers\u0027 hosts. An instance does not have anti-affinity with itself,"},{"line_number":11,"context_line":"The current code has problem when select hosts, the instance\u0027s"},{"line_number":12,"context_line":"current host will be filtered out by ServerGroupAntiAffinityFilter."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"ba0121b8_40f5c2ea","line":9,"range":{"start_line":9,"start_character":30,"end_line":9,"end_character":36},"updated":"2016-04-01 09:45:03.000000000","message":"nit:selects","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"ed12ea6992d4c7a1f58604c5b566781281aae52f","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not in group\u0027s"},{"line_number":10,"context_line":"memebers\u0027 hosts. An instance does not have anti-affinity with itself,"},{"line_number":11,"context_line":"The current code has problem when select hosts, the instance\u0027s"},{"line_number":12,"context_line":"current host will be filtered out by ServerGroupAntiAffinityFilter."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"9a061dce_1cee5a8b","line":9,"range":{"start_line":9,"start_character":30,"end_line":9,"end_character":36},"in_reply_to":"ba0121b8_40f5c2ea","updated":"2016-04-04 16:36:55.000000000","message":"Done","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"7f114fe08344b09a45a9041e6695fc0fd09b71e9","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not in group\u0027s"},{"line_number":10,"context_line":"memebers\u0027 hosts. An instance does not have anti-affinity with itself,"},{"line_number":11,"context_line":"The current code has problem when select hosts, the instance\u0027s"},{"line_number":12,"context_line":"current host will be filtered out by ServerGroupAntiAffinityFilter."},{"line_number":13,"context_line":"This can lead to failure when resize an instance with anti-affinity"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"ba0121b8_c04f1232","line":10,"range":{"start_line":9,"start_character":55,"end_line":10,"end_character":16},"updated":"2016-04-01 09:45:03.000000000","message":"in the hosts of the members of the group.","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"ed12ea6992d4c7a1f58604c5b566781281aae52f","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix resize to same host failed using anti-affinity group"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"ServerGroupAntiAffinityFilter select host which is not in group\u0027s"},{"line_number":10,"context_line":"memebers\u0027 hosts. An instance does not have anti-affinity with itself,"},{"line_number":11,"context_line":"The current code has problem when select hosts, the instance\u0027s"},{"line_number":12,"context_line":"current host will be filtered out by ServerGroupAntiAffinityFilter."},{"line_number":13,"context_line":"This can lead to failure when resize an instance with anti-affinity"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"9a061dce_fcf2866e","line":10,"range":{"start_line":9,"start_character":55,"end_line":10,"end_character":16},"in_reply_to":"ba0121b8_c04f1232","updated":"2016-04-04 16:36:55.000000000","message":"Done","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"7f114fe08344b09a45a9041e6695fc0fd09b71e9","unresolved":false,"context_lines":[{"line_number":14,"context_line":"group to the same host."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In this patch, ServerGroupAntiAffinityFite is modified. Instance"},{"line_number":17,"context_line":"don\u0027t has antiffinity with istself, add condition code as follow:"},{"line_number":18,"context_line":"if spec_obj.instance_uuid in host_state.instances.keys():"},{"line_number":19,"context_line":"    return True"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"ba0121b8_202fee3f","line":17,"range":{"start_line":17,"start_character":0,"end_line":17,"end_character":9},"updated":"2016-04-01 09:45:03.000000000","message":"doesn\u0027t have","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"7f114fe08344b09a45a9041e6695fc0fd09b71e9","unresolved":false,"context_lines":[{"line_number":14,"context_line":"group to the same host."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In this patch, ServerGroupAntiAffinityFite is modified. Instance"},{"line_number":17,"context_line":"don\u0027t has antiffinity with istself, add condition code as follow:"},{"line_number":18,"context_line":"if spec_obj.instance_uuid in host_state.instances.keys():"},{"line_number":19,"context_line":"    return True"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"ba0121b8_6025665a","line":17,"range":{"start_line":17,"start_character":27,"end_line":17,"end_character":34},"updated":"2016-04-01 09:45:03.000000000","message":"itself","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"7f114fe08344b09a45a9041e6695fc0fd09b71e9","unresolved":false,"context_lines":[{"line_number":14,"context_line":"group to the same host."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In this patch, ServerGroupAntiAffinityFite is modified. Instance"},{"line_number":17,"context_line":"don\u0027t has antiffinity with istself, add condition code as follow:"},{"line_number":18,"context_line":"if spec_obj.instance_uuid in host_state.instances.keys():"},{"line_number":19,"context_line":"    return True"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: Ie016f59f5b98bb9c70b3e33556bd747f79fc77bd"},{"line_number":22,"context_line":"Closes-Bug:#1558532"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"ba0121b8_20d6ce27","line":19,"range":{"start_line":17,"start_character":36,"end_line":19,"end_character":15},"updated":"2016-04-01 09:45:03.000000000","message":"you don\u0027t have to include the code change itself into the commit message.","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"ed12ea6992d4c7a1f58604c5b566781281aae52f","unresolved":false,"context_lines":[{"line_number":14,"context_line":"group to the same host."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"In this patch, ServerGroupAntiAffinityFite is modified. Instance"},{"line_number":17,"context_line":"don\u0027t has antiffinity with istself, add condition code as follow:"},{"line_number":18,"context_line":"if spec_obj.instance_uuid in host_state.instances.keys():"},{"line_number":19,"context_line":"    return True"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: Ie016f59f5b98bb9c70b3e33556bd747f79fc77bd"},{"line_number":22,"context_line":"Closes-Bug:#1558532"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"9a061dce_3ced1e8c","line":19,"range":{"start_line":17,"start_character":36,"end_line":19,"end_character":15},"in_reply_to":"ba0121b8_20d6ce27","updated":"2016-04-04 16:36:55.000000000","message":"Done","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"}],"nova/scheduler/filters/affinity_filter.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"7f114fe08344b09a45a9041e6695fc0fd09b71e9","unresolved":false,"context_lines":[{"line_number":88,"context_line":"        if self.policy_name not in policies:"},{"line_number":89,"context_line":"            return True"},{"line_number":90,"context_line":"        if spec_obj.instance_uuid in host_state.instances.keys():"},{"line_number":91,"context_line":"            return True"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"        group_hosts \u003d (spec_obj.instance_group.hosts"},{"line_number":94,"context_line":"                       if spec_obj.instance_group else [])"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba0121b8_a0993ec6","line":91,"updated":"2016-04-01 09:45:03.000000000","message":"I would add a note like\n# Note: an instance shall not have anti-affinity to itself.","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"ed12ea6992d4c7a1f58604c5b566781281aae52f","unresolved":false,"context_lines":[{"line_number":88,"context_line":"        if self.policy_name not in policies:"},{"line_number":89,"context_line":"            return True"},{"line_number":90,"context_line":"        if spec_obj.instance_uuid in host_state.instances.keys():"},{"line_number":91,"context_line":"            return True"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"        group_hosts \u003d (spec_obj.instance_group.hosts"},{"line_number":94,"context_line":"                       if spec_obj.instance_group else [])"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a061dce_2b95dae3","line":91,"in_reply_to":"ba0121b8_a0993ec6","updated":"2016-04-04 16:36:55.000000000","message":"Done","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"d57b5cef087d4f0b5f61b9057ef69406749f6d5a","unresolved":false,"context_lines":[{"line_number":89,"context_line":"            return True"},{"line_number":90,"context_line":"        # Note: an instance shall not have anti-affinity to itself."},{"line_number":91,"context_line":"        if spec_obj.instance_uuid in host_state.instances.keys():"},{"line_number":92,"context_line":"            return True"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"        group_hosts \u003d (spec_obj.instance_group.hosts"},{"line_number":95,"context_line":"                       if spec_obj.instance_group else [])"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a122d0e_d8247fc6","line":92,"updated":"2016-04-20 11:11:33.000000000","message":"Well, that looks acceptable to see the related host being accepted for the same instance in case of an AntiAffinity filter. Maybe we should clarify the above comment that it\u0027s only for move operations but that can be something we can modify later.","commit_id":"17471c78e5c2b4a5215e2ce81b4eec381e76d7b2"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"032956254aeb7bfdfbd5f9d4a61774a9e6bb39cf","unresolved":false,"context_lines":[{"line_number":89,"context_line":"            return True"},{"line_number":90,"context_line":"        # Note: an instance shall not have anti-affinity to itself."},{"line_number":91,"context_line":"        if spec_obj.instance_uuid in host_state.instances.keys():"},{"line_number":92,"context_line":"            return True"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"        group_hosts \u003d (spec_obj.instance_group.hosts"},{"line_number":95,"context_line":"                       if spec_obj.instance_group else [])"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a122d0e_34239357","line":92,"in_reply_to":"1a122d0e_d8247fc6","updated":"2016-04-21 11:28:43.000000000","message":"Done","commit_id":"17471c78e5c2b4a5215e2ce81b4eec381e76d7b2"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"d6dd76a450e2f35075e6fba429d3438c42cfc803","unresolved":false,"context_lines":[{"line_number":88,"context_line":"        if self.policy_name not in policies:"},{"line_number":89,"context_line":"            return True"},{"line_number":90,"context_line":"        # Note: An instance shall not have anti-affinity to itself. It\u0027s only"},{"line_number":91,"context_line":"        # for move operations."},{"line_number":92,"context_line":"        if spec_obj.instance_uuid in host_state.instances.keys():"},{"line_number":93,"context_line":"            return True"},{"line_number":94,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"1a122d0e_d5dca148","line":91,"updated":"2016-04-22 13:13:22.000000000","message":"Please modify this comment :\n\n  # NOTE(your_launchpad_id): Move operations like resize can\n  check the same source compute node where the instance\n  is. That case, AntiAffinityFilter must not return the\n  source as a non-possible destination.","commit_id":"c4901fa4594a0bc1598cea1f6bad876747ee5bdd"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"4d1d8ffa05684fe5f388f071542bfd71d1c1bd81","unresolved":false,"context_lines":[{"line_number":88,"context_line":"        if self.policy_name not in policies:"},{"line_number":89,"context_line":"            return True"},{"line_number":90,"context_line":"        # Note: An instance shall not have anti-affinity to itself. It\u0027s only"},{"line_number":91,"context_line":"        # for move operations."},{"line_number":92,"context_line":"        if spec_obj.instance_uuid in host_state.instances.keys():"},{"line_number":93,"context_line":"            return True"},{"line_number":94,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"1a122d0e_56907b4e","line":91,"in_reply_to":"1a122d0e_d5dca148","updated":"2016-04-25 00:43:17.000000000","message":"Done","commit_id":"c4901fa4594a0bc1598cea1f6bad876747ee5bdd"}],"nova/scheduler/utils.py":[{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"f26b037789bc1ee4029a0cda6d37f351db66a6e7","unresolved":false,"context_lines":[{"line_number":328,"context_line":"            msg \u003d _(\"ServerGroupSoftAntiAffinityWeigher not configured\")"},{"line_number":329,"context_line":"            LOG.error(msg)"},{"line_number":330,"context_line":"            raise exception.UnsupportedPolicyException(reason\u003dmsg)"},{"line_number":331,"context_line":"        group_hosts \u003d set(group.get_hosts(exclude\u003d[instance_uuid]))"},{"line_number":332,"context_line":"        user_hosts \u003d set(user_group_hosts) if user_group_hosts else set()"},{"line_number":333,"context_line":"        return GroupDetails(hosts\u003duser_hosts | group_hosts,"},{"line_number":334,"context_line":"                            policies\u003dgroup.policies, members\u003dgroup.members)"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba0121b8_1e8f0276","line":331,"updated":"2016-03-30 18:58:42.000000000","message":"Isn\u0027t this going to screw up the resize case for affinity filters?\n\nIn the anti affinity case the filter is:\n\nif group_hosts:                                                                                                                                                       \n             return host_state.host not in group_hosts             \n\nSo, NOT having the host where the instance currently is allows the filter to pass when migrating to the same host.\n\nIn the case of the affinity filter:\n\nif group_hosts:                                                                                                                                                       \n             return host_state.host in group_hosts    \n\nWon\u0027t this break the affinity filter? Arn\u0027t we swapping one problem for another here?","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"c4095aa885756acea3db187235d87b5bd47ac978","unresolved":false,"context_lines":[{"line_number":328,"context_line":"            msg \u003d _(\"ServerGroupSoftAntiAffinityWeigher not configured\")"},{"line_number":329,"context_line":"            LOG.error(msg)"},{"line_number":330,"context_line":"            raise exception.UnsupportedPolicyException(reason\u003dmsg)"},{"line_number":331,"context_line":"        group_hosts \u003d set(group.get_hosts(exclude\u003d[instance_uuid]))"},{"line_number":332,"context_line":"        user_hosts \u003d set(user_group_hosts) if user_group_hosts else set()"},{"line_number":333,"context_line":"        return GroupDetails(hosts\u003duser_hosts | group_hosts,"},{"line_number":334,"context_line":"                            policies\u003dgroup.policies, members\u003dgroup.members)"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba0121b8_a4651d1f","line":331,"in_reply_to":"ba0121b8_1e8f0276","updated":"2016-03-31 01:00:47.000000000","message":"Thank you for your suggestion.\nIn the case of the affinity filter:\nif group_hosts:                                                                                                                                                       \n             return host_state.host in group_hosts \n\nIf instance\u0027s affinity group has other instances, group_hosts would contain instance\u0027s current host. This change doesn\u0027t change this instance\u0027 affinity. I will write another unit test to prove this situation","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"d31f671245a7731ae16556e016a58ce6a6bfff64","unresolved":false,"context_lines":[{"line_number":328,"context_line":"            msg \u003d _(\"ServerGroupSoftAntiAffinityWeigher not configured\")"},{"line_number":329,"context_line":"            LOG.error(msg)"},{"line_number":330,"context_line":"            raise exception.UnsupportedPolicyException(reason\u003dmsg)"},{"line_number":331,"context_line":"        group_hosts \u003d set(group.get_hosts(exclude\u003d[instance_uuid]))"},{"line_number":332,"context_line":"        user_hosts \u003d set(user_group_hosts) if user_group_hosts else set()"},{"line_number":333,"context_line":"        return GroupDetails(hosts\u003duser_hosts | group_hosts,"},{"line_number":334,"context_line":"                            policies\u003dgroup.policies, members\u003dgroup.members)"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba0121b8_75ce0d2f","line":331,"in_reply_to":"ba0121b8_1e8f0276","updated":"2016-03-31 02:59:12.000000000","message":"Thank you, your suggestion remind me. I have a new idea to fix this problem. We can modify ServerGroupAntiAffinityFiter\u0027s code.\n\nBecause instance don\u0027t has antiffinity with istself, add condition code as follow:\nif spec_obj.instance_uuid in host_state.instances.keys():\n    return True\n\nWe also can modify ServerGroupAffinityFiter\u0027s code.Because if one instance\u0027s affinity group only has a member, this instance can resize/migrate/live-migrate/evacuate to any hosts which may be not itself\u0027host currently. \n\nBecause instance don\u0027t has affinity with itself. add condition code as follow:\nif spec_obj.instance_group.members \u003d\u003d [spec_obj.instance_uuid]:\n    return True","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":18247,"name":"Mark Doffman","email":"mdoffman@linux.vnet.ibm.com","username":"doffm"},"change_message_id":"8af7e8e016ecae03b753474bfe34b2e29227872c","unresolved":false,"context_lines":[{"line_number":328,"context_line":"            msg \u003d _(\"ServerGroupSoftAntiAffinityWeigher not configured\")"},{"line_number":329,"context_line":"            LOG.error(msg)"},{"line_number":330,"context_line":"            raise exception.UnsupportedPolicyException(reason\u003dmsg)"},{"line_number":331,"context_line":"        group_hosts \u003d set(group.get_hosts(exclude\u003d[instance_uuid]))"},{"line_number":332,"context_line":"        user_hosts \u003d set(user_group_hosts) if user_group_hosts else set()"},{"line_number":333,"context_line":"        return GroupDetails(hosts\u003duser_hosts | group_hosts,"},{"line_number":334,"context_line":"                            policies\u003dgroup.policies, members\u003dgroup.members)"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba0121b8_ec199a89","line":331,"in_reply_to":"ba0121b8_75ce0d2f","updated":"2016-03-31 15:44:30.000000000","message":"I might prefer this solution to the current one, its more clear in the code why you are doing it.","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"51667066af337775c407471e3c7707161ee362ab","unresolved":false,"context_lines":[{"line_number":328,"context_line":"            msg \u003d _(\"ServerGroupSoftAntiAffinityWeigher not configured\")"},{"line_number":329,"context_line":"            LOG.error(msg)"},{"line_number":330,"context_line":"            raise exception.UnsupportedPolicyException(reason\u003dmsg)"},{"line_number":331,"context_line":"        group_hosts \u003d set(group.get_hosts(exclude\u003d[instance_uuid]))"},{"line_number":332,"context_line":"        user_hosts \u003d set(user_group_hosts) if user_group_hosts else set()"},{"line_number":333,"context_line":"        return GroupDetails(hosts\u003duser_hosts | group_hosts,"},{"line_number":334,"context_line":"                            policies\u003dgroup.policies, members\u003dgroup.members)"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba0121b8_d22ec8a3","line":331,"in_reply_to":"ba0121b8_cce59a09","updated":"2016-04-01 09:44:45.000000000","message":"It think you can fix it in the same patch if you wish as the root cause is quite the same.","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"d0bca481d4f787cf23ddec43282caabb2f2513f4","unresolved":false,"context_lines":[{"line_number":328,"context_line":"            msg \u003d _(\"ServerGroupSoftAntiAffinityWeigher not configured\")"},{"line_number":329,"context_line":"            LOG.error(msg)"},{"line_number":330,"context_line":"            raise exception.UnsupportedPolicyException(reason\u003dmsg)"},{"line_number":331,"context_line":"        group_hosts \u003d set(group.get_hosts(exclude\u003d[instance_uuid]))"},{"line_number":332,"context_line":"        user_hosts \u003d set(user_group_hosts) if user_group_hosts else set()"},{"line_number":333,"context_line":"        return GroupDetails(hosts\u003duser_hosts | group_hosts,"},{"line_number":334,"context_line":"                            policies\u003dgroup.policies, members\u003dgroup.members)"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba0121b8_cce59a09","line":331,"in_reply_to":"ba0121b8_ec199a89","updated":"2016-04-01 02:28:42.000000000","message":"Does a patch only can fix one problem? May be  ServerGroupAffinityFite problem\u0027s solution is not contained in this patch?","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"9299a064417170ea74c121e1fa206a902f25b363","unresolved":false,"context_lines":[{"line_number":328,"context_line":"            msg \u003d _(\"ServerGroupSoftAntiAffinityWeigher not configured\")"},{"line_number":329,"context_line":"            LOG.error(msg)"},{"line_number":330,"context_line":"            raise exception.UnsupportedPolicyException(reason\u003dmsg)"},{"line_number":331,"context_line":"        group_hosts \u003d set(group.get_hosts(exclude\u003d[instance_uuid]))"},{"line_number":332,"context_line":"        user_hosts \u003d set(user_group_hosts) if user_group_hosts else set()"},{"line_number":333,"context_line":"        return GroupDetails(hosts\u003duser_hosts | group_hosts,"},{"line_number":334,"context_line":"                            policies\u003dgroup.policies, members\u003dgroup.members)"}],"source_content_type":"text/x-python","patch_set":3,"id":"ba0121b8_69a440b9","line":331,"in_reply_to":"ba0121b8_ec199a89","updated":"2016-04-01 02:08:09.000000000","message":"Done","commit_id":"3e57fb5a2ae6316a4949c1834cdcc15a7b24237a"}],"nova/tests/functional/test_server_group.py":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"d57b5cef087d4f0b5f61b9057ef69406749f6d5a","unresolved":false,"context_lines":[{"line_number":357,"context_line":"        self.assertNotEqual(servers[0][\u0027OS-EXT-SRV-ATTR:host\u0027],"},{"line_number":358,"context_line":"                            migrated_server[\u0027OS-EXT-SRV-ATTR:host\u0027])"},{"line_number":359,"context_line":""},{"line_number":360,"context_line":"    def test_resize_to_same_host_with_anti_affinity(self):"},{"line_number":361,"context_line":"        self.flags(allow_resize_to_same_host\u003dTrue)"},{"line_number":362,"context_line":"        created_group \u003d self.api.post_server_groups(self.anti_affinity)"},{"line_number":363,"context_line":"        servers \u003d self._boot_servers_to_group(created_group,"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a122d0e_2cb26c06","line":360,"updated":"2016-04-20 11:11:33.000000000","message":"thanks for writing that one","commit_id":"17471c78e5c2b4a5215e2ce81b4eec381e76d7b2"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"d57b5cef087d4f0b5f61b9057ef69406749f6d5a","unresolved":false,"context_lines":[{"line_number":370,"context_line":"                                                      \u0027VERIFY_RESIZE\u0027)"},{"line_number":371,"context_line":""},{"line_number":372,"context_line":"        self.assertEqual(migrated_server[\u0027OS-EXT-SRV-ATTR:host\u0027],"},{"line_number":373,"context_line":"                         server1_old_host)"},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"    def _get_compute_service_by_host_name(self, host_name):"},{"line_number":376,"context_line":"        host \u003d None"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a122d0e_cc6498ba","line":373,"updated":"2016-04-20 11:11:33.000000000","message":"nit: the usual pattern is assertEqual(expected, observed)","commit_id":"17471c78e5c2b4a5215e2ce81b4eec381e76d7b2"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"032956254aeb7bfdfbd5f9d4a61774a9e6bb39cf","unresolved":false,"context_lines":[{"line_number":370,"context_line":"                                                      \u0027VERIFY_RESIZE\u0027)"},{"line_number":371,"context_line":""},{"line_number":372,"context_line":"        self.assertEqual(migrated_server[\u0027OS-EXT-SRV-ATTR:host\u0027],"},{"line_number":373,"context_line":"                         server1_old_host)"},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"    def _get_compute_service_by_host_name(self, host_name):"},{"line_number":376,"context_line":"        host \u003d None"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a122d0e_f480fbf8","line":373,"in_reply_to":"1a122d0e_cc6498ba","updated":"2016-04-21 11:28:43.000000000","message":"Done","commit_id":"17471c78e5c2b4a5215e2ce81b4eec381e76d7b2"}],"nova/tests/unit/scheduler/filters/test_affinity_filters.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"7f114fe08344b09a45a9041e6695fc0fd09b71e9","unresolved":false,"context_lines":[{"line_number":177,"context_line":"                affinity_filter.ServerGroupAntiAffinityFilter(),"},{"line_number":178,"context_line":"                \u0027anti-affinity\u0027)"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    def test_group_anti_affinity_filter_with_instance_host(self):"},{"line_number":181,"context_line":"        mock_instance \u003d mock.Mock()"},{"line_number":182,"context_line":"        mock_instance.uuid \u003d \u0027fake_uuid\u0027"},{"line_number":183,"context_line":"        host_state \u003d fakes.FakeHostState(\u0027host1\u0027, \u0027node1\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba0121b8_202ecefa","line":180,"range":{"start_line":180,"start_character":8,"end_line":180,"end_character":58},"updated":"2016-04-01 09:45:03.000000000","message":"I would rename the test to\ntest_group_anti_affinity_filter_allows_instance_to_same_host","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"ed12ea6992d4c7a1f58604c5b566781281aae52f","unresolved":false,"context_lines":[{"line_number":177,"context_line":"                affinity_filter.ServerGroupAntiAffinityFilter(),"},{"line_number":178,"context_line":"                \u0027anti-affinity\u0027)"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    def test_group_anti_affinity_filter_with_instance_host(self):"},{"line_number":181,"context_line":"        mock_instance \u003d mock.Mock()"},{"line_number":182,"context_line":"        mock_instance.uuid \u003d \u0027fake_uuid\u0027"},{"line_number":183,"context_line":"        host_state \u003d fakes.FakeHostState(\u0027host1\u0027, \u0027node1\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a061dce_8b3ce630","line":180,"range":{"start_line":180,"start_character":8,"end_line":180,"end_character":58},"in_reply_to":"ba0121b8_202ecefa","updated":"2016-04-04 16:36:55.000000000","message":"Done","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"7f114fe08344b09a45a9041e6695fc0fd09b71e9","unresolved":false,"context_lines":[{"line_number":187,"context_line":"            instance_uuid\u003d\u0027fake_uuid\u0027)"},{"line_number":188,"context_line":"        self.assertTrue(affinity_filter.ServerGroupAntiAffinityFilter()."},{"line_number":189,"context_line":"                        host_passes(host_state, spec_obj))"},{"line_number":190,"context_line":""},{"line_number":191,"context_line":"    def _test_group_affinity_filter_passes(self, filt_cls, policy):"},{"line_number":192,"context_line":"        host \u003d fakes.FakeHostState(\u0027host1\u0027, \u0027node1\u0027, {})"},{"line_number":193,"context_line":"        spec_obj \u003d objects.RequestSpec(instance_group\u003dNone)"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba0121b8_80007a35","line":190,"updated":"2016-04-01 09:45:03.000000000","message":"There is functional test coverage on the server group feature. See: https://github.com/openstack/nova/blob/master/nova/tests/functional/test_server_group.py \nI suggest to extend that with the following scenario:\n0) have a single compute node\n1) boot a instance to an anti-affinity server group\n2) try to resize the instance\nThis scenario shall fail before your fix and shall pass after your fix.","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"ed12ea6992d4c7a1f58604c5b566781281aae52f","unresolved":false,"context_lines":[{"line_number":187,"context_line":"            instance_uuid\u003d\u0027fake_uuid\u0027)"},{"line_number":188,"context_line":"        self.assertTrue(affinity_filter.ServerGroupAntiAffinityFilter()."},{"line_number":189,"context_line":"                        host_passes(host_state, spec_obj))"},{"line_number":190,"context_line":""},{"line_number":191,"context_line":"    def _test_group_affinity_filter_passes(self, filt_cls, policy):"},{"line_number":192,"context_line":"        host \u003d fakes.FakeHostState(\u0027host1\u0027, \u0027node1\u0027, {})"},{"line_number":193,"context_line":"        spec_obj \u003d objects.RequestSpec(instance_group\u003dNone)"}],"source_content_type":"text/x-python","patch_set":4,"id":"9a061dce_a6964192","line":190,"in_reply_to":"ba0121b8_80007a35","updated":"2016-04-04 16:36:55.000000000","message":"ok.\ntest_resize_to_same_host_with_anti_affinity\nBecause original class ServerGroupTestV2 has two compute nodes default.\nSo this test using the following scenario:\n0)two compute nodes\n1)boot two instances to anti-affinity server group\n2)resize one instance.","commit_id":"c1db424d7be87782fcbb7dc776ae9419cd46548a"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"944cd59af605d5927dfb3ba4b0ac3da04f0d0171","unresolved":false,"context_lines":[{"line_number":169,"context_line":"        spec_obj \u003d objects.RequestSpec("},{"line_number":170,"context_line":"            instance_group\u003dobjects.InstanceGroup(policies\u003d[policy],"},{"line_number":171,"context_line":"                                                 hosts\u003d[\u0027host1\u0027]),"},{"line_number":172,"context_line":"            instance_uuid\u003d\u0027fake-uuid\u0027)"},{"line_number":173,"context_line":"        self.assertFalse(filt_cls.host_passes(host, spec_obj))"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":"    def test_group_anti_affinity_filter_fails(self):"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a122d0e_b671d978","line":172,"updated":"2016-04-19 15:10:34.000000000","message":"kind of wonky indentation, but whatever.","commit_id":"17471c78e5c2b4a5215e2ce81b4eec381e76d7b2"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"d57b5cef087d4f0b5f61b9057ef69406749f6d5a","unresolved":false,"context_lines":[{"line_number":169,"context_line":"        spec_obj \u003d objects.RequestSpec("},{"line_number":170,"context_line":"            instance_group\u003dobjects.InstanceGroup(policies\u003d[policy],"},{"line_number":171,"context_line":"                                                 hosts\u003d[\u0027host1\u0027]),"},{"line_number":172,"context_line":"            instance_uuid\u003d\u0027fake-uuid\u0027)"},{"line_number":173,"context_line":"        self.assertFalse(filt_cls.host_passes(host, spec_obj))"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":"    def test_group_anti_affinity_filter_fails(self):"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a122d0e_4c940842","line":172,"in_reply_to":"1a122d0e_b671d978","updated":"2016-04-20 11:11:33.000000000","message":"looks fine by me","commit_id":"17471c78e5c2b4a5215e2ce81b4eec381e76d7b2"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"d57b5cef087d4f0b5f61b9057ef69406749f6d5a","unresolved":false,"context_lines":[{"line_number":178,"context_line":"                \u0027anti-affinity\u0027)"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    def test_group_anti_affinity_filter_allows_instance_to_same_host(self):"},{"line_number":181,"context_line":"        mock_instance \u003d mock.Mock()"},{"line_number":182,"context_line":"        mock_instance.uuid \u003d \u0027fake_uuid\u0027"},{"line_number":183,"context_line":"        host_state \u003d fakes.FakeHostState(\u0027host1\u0027, \u0027node1\u0027,"},{"line_number":184,"context_line":"                                         {}, instances\u003d[mock_instance])"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a122d0e_acab1c74","line":181,"range":{"start_line":181,"start_character":24,"end_line":181,"end_character":35},"updated":"2016-04-20 11:11:33.000000000","message":"I would prefer to use an empty objects.Instance() rather but that\u0027s a nit","commit_id":"17471c78e5c2b4a5215e2ce81b4eec381e76d7b2"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"032956254aeb7bfdfbd5f9d4a61774a9e6bb39cf","unresolved":false,"context_lines":[{"line_number":178,"context_line":"                \u0027anti-affinity\u0027)"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    def test_group_anti_affinity_filter_allows_instance_to_same_host(self):"},{"line_number":181,"context_line":"        mock_instance \u003d mock.Mock()"},{"line_number":182,"context_line":"        mock_instance.uuid \u003d \u0027fake_uuid\u0027"},{"line_number":183,"context_line":"        host_state \u003d fakes.FakeHostState(\u0027host1\u0027, \u0027node1\u0027,"},{"line_number":184,"context_line":"                                         {}, instances\u003d[mock_instance])"}],"source_content_type":"text/x-python","patch_set":7,"id":"1a122d0e_af28ee86","line":181,"range":{"start_line":181,"start_character":24,"end_line":181,"end_character":35},"in_reply_to":"1a122d0e_acab1c74","updated":"2016-04-21 11:28:43.000000000","message":"Done","commit_id":"17471c78e5c2b4a5215e2ce81b4eec381e76d7b2"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"d6dd76a450e2f35075e6fba429d3438c42cfc803","unresolved":false,"context_lines":[{"line_number":178,"context_line":"                \u0027anti-affinity\u0027)"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    def test_group_anti_affinity_filter_allows_instance_to_same_host(self):"},{"line_number":181,"context_line":"        mock_instance \u003d objects.Instance(uuid\u003d\u0027fake_uuid\u0027)"},{"line_number":182,"context_line":"        host_state \u003d fakes.FakeHostState(\u0027host1\u0027, \u0027node1\u0027,"},{"line_number":183,"context_line":"                                         {}, instances\u003d[mock_instance])"},{"line_number":184,"context_line":"        spec_obj \u003d objects.RequestSpec(instance_group\u003dobjects.InstanceGroup("}],"source_content_type":"text/x-python","patch_set":8,"id":"1a122d0e_75d4ad46","line":181,"range":{"start_line":181,"start_character":41,"end_line":181,"end_character":57},"updated":"2016-04-22 13:13:22.000000000","message":"please don\u0027t. At the moment, the UUIDField supports just a string, but that\u0027s something we\u0027re trying to remove and just make UUIDs correct.\n\nInstead, please do :\n\n  fake_uuid \u003d str(uuid.uuid4())\n  mock_instance \u003d objects.Instance(uuid\u003dfake_uuid)","commit_id":"c4901fa4594a0bc1598cea1f6bad876747ee5bdd"},{"author":{"_account_id":12813,"name":"Rong Han","email":"han.rong3@zte.com.cn","username":"hanrong-zte"},"change_message_id":"4d1d8ffa05684fe5f388f071542bfd71d1c1bd81","unresolved":false,"context_lines":[{"line_number":178,"context_line":"                \u0027anti-affinity\u0027)"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"    def test_group_anti_affinity_filter_allows_instance_to_same_host(self):"},{"line_number":181,"context_line":"        mock_instance \u003d objects.Instance(uuid\u003d\u0027fake_uuid\u0027)"},{"line_number":182,"context_line":"        host_state \u003d fakes.FakeHostState(\u0027host1\u0027, \u0027node1\u0027,"},{"line_number":183,"context_line":"                                         {}, instances\u003d[mock_instance])"},{"line_number":184,"context_line":"        spec_obj \u003d objects.RequestSpec(instance_group\u003dobjects.InstanceGroup("}],"source_content_type":"text/x-python","patch_set":8,"id":"1a122d0e_56219bfb","line":181,"range":{"start_line":181,"start_character":41,"end_line":181,"end_character":57},"in_reply_to":"1a122d0e_75d4ad46","updated":"2016-04-25 00:43:17.000000000","message":"Done","commit_id":"c4901fa4594a0bc1598cea1f6bad876747ee5bdd"}]}
