)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"ff2b64de4155e11115f0c75201a9e992c16d7469","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Fix access_ip_v4/6 filters params for servers filter"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"While adding the json schema for servers filter query,"},{"line_number":10,"context_line":"we added  \u0027accessIPv4\u0027 and \u0027accessIPv6\u0027 as allowed params"},{"line_number":11,"context_line":"but they do not match with what DB has. It is \u0027access_ip_v4\u0027"},{"line_number":12,"context_line":"and \u0027access_ip_v6\u0027 in DB."},{"line_number":13,"context_line":"This makes  \u0027access_ip_v4\u0027 and \u0027access_ip_v6\u0027 filter stop working."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a461143_455582c4","line":10,"range":{"start_line":10,"start_character":8,"end_line":10,"end_character":10},"updated":"2017-02-02 14:31:30.000000000","message":"nit, double spaces at here.","commit_id":"676a4bf7a3ff60ef87aef99b56a25dd501337677"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bd80026fdff007b975b0cedd39a6a9f8fc233dae","unresolved":false,"context_lines":[{"line_number":12,"context_line":"and \u0027access_ip_v6\u0027 in DB."},{"line_number":13,"context_line":"This makes  \u0027access_ip_v4\u0027 and \u0027access_ip_v6\u0027 filter stop working."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Below schema should be fixed accordingly to allow the \u0027access_ip_v4\u0027"},{"line_number":16,"context_line":"and \u0027access_ip_v6\u0027 as valid filter."},{"line_number":17,"context_line":"https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/schemas/servers.py#L343-L344"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"\u0027accessIPv4\u0027 and \u0027accessIPv6\u0027 are the something API accept"},{"line_number":20,"context_line":"and return and internally API layer translate those param"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a461143_fcf7e389","line":17,"range":{"start_line":15,"start_character":0,"end_line":17,"end_character":101},"updated":"2017-02-02 16:16:45.000000000","message":"nit: we don\u0027t really need this in the commit message, since it\u0027s what you\u0027re fixing in the patch. Also, the link is to master rather than a git hash so over time this is going to not be correct anymore.\n\nAnyway, not a huge issue.","commit_id":"676a4bf7a3ff60ef87aef99b56a25dd501337677"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bd80026fdff007b975b0cedd39a6a9f8fc233dae","unresolved":false,"context_lines":[{"line_number":16,"context_line":"and \u0027access_ip_v6\u0027 as valid filter."},{"line_number":17,"context_line":"https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/schemas/servers.py#L343-L344"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"\u0027accessIPv4\u0027 and \u0027accessIPv6\u0027 are the something API accept"},{"line_number":20,"context_line":"and return and internally API layer translate those param"},{"line_number":21,"context_line":"to their respective field(\u0027access_ip_v4\u0027 and \u0027access_ip_v6\u0027)"},{"line_number":22,"context_line":"present in DB."},{"line_number":23,"context_line":"So user does not know anything about \u0027access_ip_v4\u0027 and"},{"line_number":24,"context_line":"\u0027access_ip_v6\u0027. They are not in API representation actually."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Later list filter and sort param should be same as field return"},{"line_number":27,"context_line":"in GET or accepted in POST/PUT which are \u0027accessIPv4\u0027 and \u0027accessIPv6\u0027."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a461143_7c1133af","line":24,"range":{"start_line":19,"start_character":0,"end_line":24,"end_character":60},"updated":"2017-02-02 16:16:45.000000000","message":"Yeah so accessIPv4/6 are in the server GET response, but as noted access_ip_v4/6 are the internal data model fields. But that\u0027s probably where the confusion came in in the first place.","commit_id":"676a4bf7a3ff60ef87aef99b56a25dd501337677"}],"nova/api/openstack/compute/schemas/servers.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"f985d3e648cb449982765a226a2b889b3726de9e","unresolved":false,"context_lines":[{"line_number":340,"context_line":"        \u0027uuid\u0027: common_param,"},{"line_number":341,"context_line":"        \u0027root_device_name\u0027: common_regex_param,"},{"line_number":342,"context_line":"        \u0027config_drive\u0027: common_regex_param,"},{"line_number":343,"context_line":"        \u0027accessIPv4\u0027: common_regex_param,"},{"line_number":344,"context_line":"        \u0027accessIPv6\u0027: common_regex_param,"},{"line_number":345,"context_line":"        \u0027auto_disk_config\u0027: common_regex_param,"},{"line_number":346,"context_line":"        \u0027progress\u0027: common_regex_param,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a461143_05f1c4cd","side":"PARENT","line":343,"range":{"start_line":343,"start_character":9,"end_line":343,"end_character":19},"updated":"2017-02-02 10:19:05.000000000","message":"This is correct because its what the name is in the API.","commit_id":"1d3ba1bedaefdd870a46497a740dd2b7d99e2754"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bd80026fdff007b975b0cedd39a6a9f8fc233dae","unresolved":false,"context_lines":[{"line_number":340,"context_line":"        \u0027uuid\u0027: common_param,"},{"line_number":341,"context_line":"        \u0027root_device_name\u0027: common_regex_param,"},{"line_number":342,"context_line":"        \u0027config_drive\u0027: common_regex_param,"},{"line_number":343,"context_line":"        \u0027accessIPv4\u0027: common_regex_param,"},{"line_number":344,"context_line":"        \u0027accessIPv6\u0027: common_regex_param,"},{"line_number":345,"context_line":"        \u0027auto_disk_config\u0027: common_regex_param,"},{"line_number":346,"context_line":"        \u0027progress\u0027: common_regex_param,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a461143_7c5f7375","side":"PARENT","line":343,"range":{"start_line":343,"start_character":9,"end_line":343,"end_character":19},"in_reply_to":"3a461143_05f1c4cd","updated":"2017-02-02 16:16:45.000000000","message":"This is the name in the GET response, but isn\u0027t what we\u0027d handle in a request filter/sort because it\u0027s not what it\u0027s in the instances table data model. So it\u0027s fine to do something new later in a new microversion as Alex pointed out, IMO.","commit_id":"1d3ba1bedaefdd870a46497a740dd2b7d99e2754"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"f985d3e648cb449982765a226a2b889b3726de9e","unresolved":false,"context_lines":[{"line_number":340,"context_line":"        \u0027uuid\u0027: common_param,"},{"line_number":341,"context_line":"        \u0027root_device_name\u0027: common_regex_param,"},{"line_number":342,"context_line":"        \u0027config_drive\u0027: common_regex_param,"},{"line_number":343,"context_line":"        \u0027access_ip_v4\u0027: common_regex_param,"},{"line_number":344,"context_line":"        \u0027access_ip_v6\u0027: common_regex_param,"},{"line_number":345,"context_line":"        \u0027auto_disk_config\u0027: common_regex_param,"},{"line_number":346,"context_line":"        \u0027progress\u0027: common_regex_param,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a461143_e5caf86d","line":343,"updated":"2017-02-02 10:19:05.000000000","message":"We should probably still accept this one, because it used to work. But we should mark it to be removed in the future.","commit_id":"676a4bf7a3ff60ef87aef99b56a25dd501337677"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bd80026fdff007b975b0cedd39a6a9f8fc233dae","unresolved":false,"context_lines":[{"line_number":340,"context_line":"        \u0027uuid\u0027: common_param,"},{"line_number":341,"context_line":"        \u0027root_device_name\u0027: common_regex_param,"},{"line_number":342,"context_line":"        \u0027config_drive\u0027: common_regex_param,"},{"line_number":343,"context_line":"        \u0027access_ip_v4\u0027: common_regex_param,"},{"line_number":344,"context_line":"        \u0027access_ip_v6\u0027: common_regex_param,"},{"line_number":345,"context_line":"        \u0027auto_disk_config\u0027: common_regex_param,"},{"line_number":346,"context_line":"        \u0027progress\u0027: common_regex_param,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a461143_3c4ecbc1","line":343,"in_reply_to":"3a461143_e5caf86d","updated":"2017-02-02 16:16:45.000000000","message":"Alternatively, we change the response to return this rather than accessIPv4, we had similar discussions about power_state.","commit_id":"676a4bf7a3ff60ef87aef99b56a25dd501337677"}],"nova/tests/unit/api/openstack/compute/test_serversV21.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bd80026fdff007b975b0cedd39a6a9f8fc233dae","unresolved":false,"context_lines":[{"line_number":1288,"context_line":"        self.stubs.Set(compute_api.API, \u0027get_all\u0027, fake_get_all)"},{"line_number":1289,"context_line":""},{"line_number":1290,"context_line":"        req \u003d self.req(\u0027/fake/servers?access_ip_v4\u003dffff.*\u0027,"},{"line_number":1291,"context_line":"                                      use_admin_context\u003dTrue)"},{"line_number":1292,"context_line":"        servers \u003d self.controller.index(req)[\u0027servers\u0027]"},{"line_number":1293,"context_line":""},{"line_number":1294,"context_line":"        self.assertEqual(len(servers), 1)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a461143_7cedb38d","line":1291,"updated":"2017-02-02 16:16:45.000000000","message":"nit: I\u0027d align this with \u0027/fake/... above.","commit_id":"676a4bf7a3ff60ef87aef99b56a25dd501337677"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bd80026fdff007b975b0cedd39a6a9f8fc233dae","unresolved":false,"context_lines":[{"line_number":1291,"context_line":"                                      use_admin_context\u003dTrue)"},{"line_number":1292,"context_line":"        servers \u003d self.controller.index(req)[\u0027servers\u0027]"},{"line_number":1293,"context_line":""},{"line_number":1294,"context_line":"        self.assertEqual(len(servers), 1)"},{"line_number":1295,"context_line":"        self.assertEqual(servers[0][\u0027id\u0027], server_uuid)"},{"line_number":1296,"context_line":""},{"line_number":1297,"context_line":"    def test_get_servers_admin_allows_access_ip_v6(self):"},{"line_number":1298,"context_line":"        \"\"\"Test getting servers by access_ip_v6 with admin_api enabled and"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a461143_3cfc0b3e","line":1295,"range":{"start_line":1294,"start_character":8,"end_line":1295,"end_character":55},"updated":"2017-02-02 16:16:45.000000000","message":"The arguments here should be reversed (expected, actual).","commit_id":"676a4bf7a3ff60ef87aef99b56a25dd501337677"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bd80026fdff007b975b0cedd39a6a9f8fc233dae","unresolved":false,"context_lines":[{"line_number":1312,"context_line":"        self.stubs.Set(compute_api.API, \u0027get_all\u0027, fake_get_all)"},{"line_number":1313,"context_line":""},{"line_number":1314,"context_line":"        req \u003d self.req(\u0027/fake/servers?access_ip_v6\u003dffff.*\u0027,"},{"line_number":1315,"context_line":"                                      use_admin_context\u003dTrue)"},{"line_number":1316,"context_line":"        servers \u003d self.controller.index(req)[\u0027servers\u0027]"},{"line_number":1317,"context_line":""},{"line_number":1318,"context_line":"        self.assertEqual(len(servers), 1)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a461143_5c90f7ec","line":1315,"updated":"2017-02-02 16:16:45.000000000","message":"same","commit_id":"676a4bf7a3ff60ef87aef99b56a25dd501337677"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"bd80026fdff007b975b0cedd39a6a9f8fc233dae","unresolved":false,"context_lines":[{"line_number":1315,"context_line":"                                      use_admin_context\u003dTrue)"},{"line_number":1316,"context_line":"        servers \u003d self.controller.index(req)[\u0027servers\u0027]"},{"line_number":1317,"context_line":""},{"line_number":1318,"context_line":"        self.assertEqual(len(servers), 1)"},{"line_number":1319,"context_line":"        self.assertEqual(servers[0][\u0027id\u0027], server_uuid)"},{"line_number":1320,"context_line":""},{"line_number":1321,"context_line":"    def test_get_all_server_details(self):"},{"line_number":1322,"context_line":"        expected_flavor \u003d {"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a461143_bcb55b7f","line":1319,"range":{"start_line":1318,"start_character":8,"end_line":1319,"end_character":55},"updated":"2017-02-02 16:16:45.000000000","message":"same","commit_id":"676a4bf7a3ff60ef87aef99b56a25dd501337677"}]}
