)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7764,"name":"Peter Hamilton","email":"peter.hamilton@jhuapl.edu","username":"Peter"},"change_message_id":"2ab8b7604d1960d8d25b91223a2efe50a5ffbb2e","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Adjust exception handling when calling set_allocations so that a"},{"line_number":10,"context_line":"KeyError in the usage_map raises an InvalidInventory. When making"},{"line_number":11,"context_line":"allocations against against a resource provider with \u003e1 resource classes"},{"line_number":12,"context_line":"and where one of those resource classes does not have inventory on the"},{"line_number":13,"context_line":"provider, we can attempt to get info out of the usage_map that is not"},{"line_number":14,"context_line":"there, and get a KeyError. This catches the KeyError and turns it into"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"1f1a1f67_beb32b98","line":11,"range":{"start_line":11,"start_character":12,"end_line":11,"end_character":27},"updated":"2017-07-17 13:11:06.000000000","message":"s/against against/against","commit_id":"69ca185019b42633e56924b7ef76a245d386e53f"}],"nova/objects/resource_provider.py":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"9e11aa8f595905aa840116bbb1d399552a10a9b1","unresolved":false,"context_lines":[{"line_number":1600,"context_line":"        provs_with_inv.add(record[\"uuid\"])"},{"line_number":1601,"context_line":"    # Ensure that all providers have existing inventory"},{"line_number":1602,"context_line":"    missing_provs \u003d provider_uuids - provs_with_inv"},{"line_number":1603,"context_line":"    if missing_provs:"},{"line_number":1604,"context_line":"        class_str \u003d \u0027, \u0027.join([_RC_CACHE.string_from_id(rc_id)"},{"line_number":1605,"context_line":"                               for rc_id in rc_ids])"},{"line_number":1606,"context_line":"        provider_str \u003d \u0027, \u0027.join(missing_provs)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1f1a1f67_f33455fd","line":1603,"updated":"2017-07-15 17:56:06.000000000","message":"I\u0027m not certain the below is the right place to fix the bug. It seems like here ought to be the right place but it\u0027s only catching missing providers, not bad resource classes.","commit_id":"13de845766eecc7dfa39e796521ebbecea8076bf"},{"author":{"_account_id":1063,"name":"Ed Leafe","email":"ed@leafe.com","username":"ed-leafe"},"change_message_id":"115405da92c7d4b13b16ffb68d98246dd124290c","unresolved":false,"context_lines":[{"line_number":1595,"context_line":"    for record in records:"},{"line_number":1596,"context_line":"        map_key \u003d (record[\u0027uuid\u0027], record[\u0027resource_class_id\u0027])"},{"line_number":1597,"context_line":"        if map_key in usage_map:"},{"line_number":1598,"context_line":"            raise KeyError(\"%s already in usage_map, bad query\" % str(map_key))"},{"line_number":1599,"context_line":"        usage_map[map_key] \u003d record"},{"line_number":1600,"context_line":"        provs_with_inv.add(record[\"uuid\"])"},{"line_number":1601,"context_line":"    # Ensure that all providers have existing inventory"}],"source_content_type":"text/x-python","patch_set":2,"id":"1f1a1f67_58178f46","line":1598,"range":{"start_line":1598,"start_character":12,"end_line":1598,"end_character":79},"updated":"2017-07-17 11:41:19.000000000","message":"Makes me wonder if we should handle this similarly, rather than having a KeyError raised.","commit_id":"69ca185019b42633e56924b7ef76a245d386e53f"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"00b2188d4d135b3d6f6b092d5b4fe69c136a048e","unresolved":false,"context_lines":[{"line_number":1595,"context_line":"    for record in records:"},{"line_number":1596,"context_line":"        map_key \u003d (record[\u0027uuid\u0027], record[\u0027resource_class_id\u0027])"},{"line_number":1597,"context_line":"        if map_key in usage_map:"},{"line_number":1598,"context_line":"            raise KeyError(\"%s already in usage_map, bad query\" % str(map_key))"},{"line_number":1599,"context_line":"        usage_map[map_key] \u003d record"},{"line_number":1600,"context_line":"        provs_with_inv.add(record[\"uuid\"])"},{"line_number":1601,"context_line":"    # Ensure that all providers have existing inventory"}],"source_content_type":"text/x-python","patch_set":2,"id":"1f1a1f67_a9de576a","line":1598,"in_reply_to":"1f1a1f67_58178f46","updated":"2017-07-17 13:16:35.000000000","message":"did you see my comment on ps1 (which is related)","commit_id":"69ca185019b42633e56924b7ef76a245d386e53f"}],"nova/tests/functional/api/openstack/placement/gabbits/allocation-bad-class.yaml":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"3694a27f58fc353cc4eeb729d8c51d4b56d0fae2","unresolved":false,"context_lines":[{"line_number":37,"context_line":"  status: 200"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"- name: allocate some of it two"},{"line_number":40,"context_line":"  desc: this is the one that used to raise a 500"},{"line_number":41,"context_line":"  PUT: /allocations/6d9f83db-6eb5-49f6-84b0-5d03c6aa9fc8"},{"line_number":42,"context_line":"  data:"},{"line_number":43,"context_line":"      allocations:"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"1f1a1f67_879b5b16","line":40,"updated":"2017-07-18 14:34:22.000000000","message":"Tested without the change and confirmed this explodes.","commit_id":"913149249cc00f50a6219d3ddc86f3600a610c00"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"d3d32d29aa48a2d368853a1ce9680b35a6be0613","unresolved":false,"context_lines":[{"line_number":47,"context_line":"                DISK_GB: 5"},{"line_number":48,"context_line":"                CUSTOM_GOLD: 1"},{"line_number":49,"context_line":"      project_id: 42a32c07-3eeb-4401-9373-68a8cdca6784"},{"line_number":50,"context_line":"      user_id: 66cb2f29-c86d-47c3-8af5-69ae7b778c70"},{"line_number":51,"context_line":"  status: 409"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"- name: allocate some of it custom"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"1f1a1f67_0aa2d9fd","line":50,"updated":"2017-07-17 14:29:48.000000000","message":"Is there anything special about these UUIDs? As in, do they match some environ variables in a fixture or something?","commit_id":"913149249cc00f50a6219d3ddc86f3600a610c00"}]}
