)]}'
{"specs/newton/approved/enhance-error-messages.rst":[{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"9c1aa685926d69681bd0a06cf62c205acd7823ff","unresolved":false,"context_lines":[{"line_number":28,"context_line":"Furthermore, as the lack of unified format for the error message,"},{"line_number":29,"context_line":"it is hard to share the error message across multiple projects while"},{"line_number":30,"context_line":"they are calling each other. Thus it is hard to support the"},{"line_number":31,"context_line":"cross-project tracking for the error."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Use Cases"},{"line_number":34,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_24622917","line":31,"updated":"2016-04-21 20:26:58.000000000","message":"some discussions here: so , it\u0027s a good spec but seems not target to N cycle since we need API ref doc update now\n\nhttp://lists.openstack.org/pipermail/openstack-dev/2016-March/090927.html\n\nFor the #3 priority item one of the things that came up today was the\nstructured errors spec by the API working group. That would be really\nnice... but in some ways really does need the entire new API reference\ndocs in place. And maybe is better in O.","commit_id":"f6e75911195030ea6396d4288872cbbdd3e417af"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"9c1aa685926d69681bd0a06cf62c205acd7823ff","unresolved":false,"context_lines":[{"line_number":153,"context_line":"---------------"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":"* When error happens, a formatted error list is returned to API users, we need"},{"line_number":156,"context_line":"to start a new microversion as it breaks backward compatibility."},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"Note that the old nova error message format [3] will be replaced"},{"line_number":159,"context_line":"with the common error message format [1] completely in the new microversion."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_041c4d76","line":156,"range":{"start_line":156,"start_character":15,"end_line":156,"end_character":27},"updated":"2016-04-21 20:26:58.000000000","message":"this will bump microversion a lot, is it possible, e.g  bump in one patch?","commit_id":"f6e75911195030ea6396d4288872cbbdd3e417af"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"9c1aa685926d69681bd0a06cf62c205acd7823ff","unresolved":false,"context_lines":[{"line_number":157,"context_line":""},{"line_number":158,"context_line":"Note that the old nova error message format [3] will be replaced"},{"line_number":159,"context_line":"with the common error message format [1] completely in the new microversion."},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"Security impact"},{"line_number":162,"context_line":"---------------"},{"line_number":163,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_87ca1f6d","line":160,"updated":"2016-04-21 20:26:58.000000000","message":"I","commit_id":"f6e75911195030ea6396d4288872cbbdd3e417af"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"9c1aa685926d69681bd0a06cf62c205acd7823ff","unresolved":false,"context_lines":[{"line_number":157,"context_line":""},{"line_number":158,"context_line":"Note that the old nova error message format [3] will be replaced"},{"line_number":159,"context_line":"with the common error message format [1] completely in the new microversion."},{"line_number":160,"context_line":""},{"line_number":161,"context_line":"Security impact"},{"line_number":162,"context_line":"---------------"},{"line_number":163,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_67aa6387","line":160,"updated":"2016-04-21 20:26:58.000000000","message":"maybe we can put a nova related sample output here","commit_id":"f6e75911195030ea6396d4288872cbbdd3e417af"}],"specs/ocata/approved/enhance-error-messages.rst":[{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"3f76ec1f1fc4be6332cba9cdcd6416760c1b880b","unresolved":false,"context_lines":[{"line_number":127,"context_line":""},{"line_number":128,"context_line":"What this specification does not solve"},{"line_number":129,"context_line":"--------------------------------------"},{"line_number":130,"context_line":"* For a asynchronous operation which is supposed to return a 202 status code,"},{"line_number":131,"context_line":"if a success response is already returned, we don\u0027t have to generate"},{"line_number":132,"context_line":"BaseErrorMetas, since we can never return it to user."},{"line_number":133,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3ac371cc_cf73724c","line":130,"range":{"start_line":130,"start_character":61,"end_line":130,"end_character":64},"updated":"2016-08-15 14:28:26.000000000","message":"maybe 204 as well?","commit_id":"2357afc4325bf56a47d13f192155c08195c4c496"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"b501faf27d0f9690d987fccc042b1f1d93ae89b6","unresolved":false,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"    class NotFound(NovaException):"},{"line_number":106,"context_line":"        msg_fmt \u003d _(\"Resource could not be found.\")"},{"line_number":107,"context_line":"        code \u003d 404"},{"line_number":108,"context_line":"        safe \u003d True"},{"line_number":109,"context_line":"        err_code \u003d \"not-found\""},{"line_number":110,"context_line":"        err_title \u003d \"No valid resource found\""}],"source_content_type":"text/x-rst","patch_set":4,"id":"1ac06dbe_1cf305a0","line":107,"range":{"start_line":107,"start_character":8,"end_line":107,"end_character":12},"updated":"2016-08-19 20:36:12.000000000","message":"for this kind of exception, we don\u0027t set code for it \nshould we add it into exception defintion? or set it at API layer?  if we did this Exception \u003c-\u003e http code mapping \nis it implicitly define code logic in exception.py ? \n\n 572 class AgentBuildExists(NovaException):\n 573     msg_fmt \u003d _(\"Agent-build with hypervisor %(hypervisor)s os %(os)s \"\n 574                 \"architecture %(architecture)s exists.\")\n\n\n\nfor example, we raised AgentBuildExists in compute layer\nthen API layer need catch and raise another error\nin most case, we might know how it will be translated \nbut can we guarantee the exception will raise same http code in all API code routine?","commit_id":"16d8f5937dda2a15f00b44854dc19936c273d1fa"},{"author":{"_account_id":20105,"name":"Cao ShuFeng","email":"caosf.fnst@cn.fujitsu.com","username":"caosf.fnst"},"change_message_id":"bf629102d267198a622df415502b4068cd99e3fe","unresolved":false,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"    class NotFound(NovaException):"},{"line_number":106,"context_line":"        msg_fmt \u003d _(\"Resource could not be found.\")"},{"line_number":107,"context_line":"        code \u003d 404"},{"line_number":108,"context_line":"        safe \u003d True"},{"line_number":109,"context_line":"        err_code \u003d \"not-found\""},{"line_number":110,"context_line":"        err_title \u003d \"No valid resource found\""}],"source_content_type":"text/x-rst","patch_set":4,"id":"1ac06dbe_ad02736d","line":107,"range":{"start_line":107,"start_character":8,"end_line":107,"end_character":12},"in_reply_to":"1ac06dbe_1cf305a0","updated":"2016-08-25 02:26:03.000000000","message":"Hi jichenjc:\n    Yes, we already have a map here[1]. We can use this.\n    So I think code is unnecessary.\n\n[1]: https://github.com/openstack/nova/blob/master/nova/api/openstack/wsgi.py#L1014","commit_id":"16d8f5937dda2a15f00b44854dc19936c273d1fa"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"443975cc9d39796d5678ae6253f71e8583024137","unresolved":false,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"    class NotFound(NovaException):"},{"line_number":106,"context_line":"        msg_fmt \u003d _(\"Resource could not be found.\")"},{"line_number":107,"context_line":"        code \u003d 404"},{"line_number":108,"context_line":"        safe \u003d True"},{"line_number":109,"context_line":"        err_code \u003d \"not-found\""},{"line_number":110,"context_line":"        err_title \u003d \"No valid resource found\""}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa7ab95a_22c93179","line":107,"range":{"start_line":107,"start_character":8,"end_line":107,"end_character":12},"in_reply_to":"1ac06dbe_ad02736d","updated":"2016-08-26 16:29:19.000000000","message":"no, I don\u0027t think that can be used ...\nyou are talking about Nova exception here in the spec while the link you give is for HTTP exception, how to map them is totally in the api layer code ,but your proposal here is impclitly defined in the exception definition","commit_id":"16d8f5937dda2a15f00b44854dc19936c273d1fa"},{"author":{"_account_id":20105,"name":"Cao ShuFeng","email":"caosf.fnst@cn.fujitsu.com","username":"caosf.fnst"},"change_message_id":"4bb5c6eadbfcf63ca64c4c26f840d289b9daf1d7","unresolved":false,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"    class NotFound(NovaException):"},{"line_number":106,"context_line":"        msg_fmt \u003d _(\"Resource could not be found.\")"},{"line_number":107,"context_line":"        code \u003d 404"},{"line_number":108,"context_line":"        safe \u003d True"},{"line_number":109,"context_line":"        err_code \u003d \"not-found\""},{"line_number":110,"context_line":"        err_title \u003d \"No valid resource found\""}],"source_content_type":"text/x-rst","patch_set":4,"id":"fa7ab95a_22957fdd","line":107,"range":{"start_line":107,"start_character":8,"end_line":107,"end_character":12},"in_reply_to":"fa7ab95a_22c93179","updated":"2016-08-29 02:40:37.000000000","message":"As we said in line 130, we only focus on nova own internal exception. So, we only have *one* error returned to api user(the previously caught exception is not included). And for nova\u0027s own error, we can format the error message in api layer, IMO.","commit_id":"16d8f5937dda2a15f00b44854dc19936c273d1fa"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"dd2ab713e6771b21e2f29e89d1bdaa5f2ce24378","unresolved":false,"context_lines":[{"line_number":105,"context_line":"    class NotFound(NovaException):"},{"line_number":106,"context_line":"        msg_fmt \u003d _(\"Resource could not be found.\")"},{"line_number":107,"context_line":"        safe \u003d True"},{"line_number":108,"context_line":"        err_code \u003d \"not-found\""},{"line_number":109,"context_line":"        err_title \u003d \"No valid resource found\""},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"Note that the \"err_code\" property here only contains partial information,"}],"source_content_type":"text/x-rst","patch_set":5,"id":"fa7ab95a_42747534","line":108,"range":{"start_line":108,"start_character":5,"end_line":108,"end_character":29},"updated":"2016-08-26 16:30:21.000000000","message":"question on PS#4 still there..","commit_id":"4172e323f3e43e29993dc470ddba1c6e740fa151"}]}
