)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"a26697ba0d4990a91d7d5540f664c3740ab192e0","unresolved":false,"context_lines":[{"line_number":7,"context_line":"[POC][placement] Amend r-p/{uuid}/traits PUT to support os-traits"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch amends /resource_providers/{uuid}/traits PUT to support"},{"line_number":10,"context_line":"os-traits library. If the specified *customed* traits don\u0027t exist in the"},{"line_number":11,"context_line":"placement database, it will return HTTP 400."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Partial implement blueprint resource-provider-tags"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3a98d1f4_26d21001","line":10,"updated":"2016-09-29 15:28:38.000000000","message":"custom","commit_id":"01cd39217aa12434664b988e80a39a5b45ed00a1"},{"author":{"_account_id":15648,"name":"Yingxin","email":"yingxin.cheng@intel.com","username":"Yingxin"},"change_message_id":"8c7e59baa669b3aacce9e7de52181c46283a0447","unresolved":false,"context_lines":[{"line_number":7,"context_line":"[POC][placement] Amend r-p/{uuid}/traits PUT to support os-traits"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch amends /resource_providers/{uuid}/traits PUT to support"},{"line_number":10,"context_line":"os-traits library. If the specified *customed* traits don\u0027t exist in the"},{"line_number":11,"context_line":"placement database, it will return HTTP 400."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Partial implement blueprint resource-provider-tags"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3a98d1f4_c1371d4b","line":10,"in_reply_to":"3a98d1f4_26d21001","updated":"2016-10-03 10:46:52.000000000","message":"right, thanks","commit_id":"01cd39217aa12434664b988e80a39a5b45ed00a1"}],"nova/api/openstack/placement/handlers/trait.py":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"a26697ba0d4990a91d7d5540f664c3740ab192e0","unresolved":false,"context_lines":[{"line_number":156,"context_line":"    uuid \u003d util.wsgi_path_item(req.environ, \u0027uuid\u0027)"},{"line_number":157,"context_line":"    traits \u003d _extra_traits(req.body, PUT_TRAITS_SCHEMA)"},{"line_number":158,"context_line":"    resource_provider \u003d objects.ResourceProvider.get_by_uuid("},{"line_number":159,"context_line":"        context, uuid)"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    trait_objs \u003d objects.TraitList.get_all(context, filters\u003d{\u0027traits\u0027: traits})"},{"line_number":162,"context_line":"    if len(trait_objs) !\u003d len(traits):"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a98d1f4_e6b66889","side":"PARENT","line":159,"updated":"2016-09-29 15:28:38.000000000","message":"If you put this rp.get_by_uuid first, then a 404 which could happen will happen before any of the work done above. You want this so that the URI being wrong (invalid or non-existent resource provider uuid) is caught and communicated first.","commit_id":"10a1190baa23ac6d3f9f470b3e0b0f8c2bfa52ef"},{"author":{"_account_id":15648,"name":"Yingxin","email":"yingxin.cheng@intel.com","username":"Yingxin"},"change_message_id":"8c7e59baa669b3aacce9e7de52181c46283a0447","unresolved":false,"context_lines":[{"line_number":156,"context_line":"    uuid \u003d util.wsgi_path_item(req.environ, \u0027uuid\u0027)"},{"line_number":157,"context_line":"    traits \u003d _extra_traits(req.body, PUT_TRAITS_SCHEMA)"},{"line_number":158,"context_line":"    resource_provider \u003d objects.ResourceProvider.get_by_uuid("},{"line_number":159,"context_line":"        context, uuid)"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"    trait_objs \u003d objects.TraitList.get_all(context, filters\u003d{\u0027traits\u0027: traits})"},{"line_number":162,"context_line":"    if len(trait_objs) !\u003d len(traits):"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a98d1f4_6b346afb","side":"PARENT","line":159,"in_reply_to":"3a98d1f4_e6b66889","updated":"2016-10-03 10:46:52.000000000","message":"Yes, you\u0027re correct. Will update in the next patch.","commit_id":"10a1190baa23ac6d3f9f470b3e0b0f8c2bfa52ef"}]}
