)]}'
{"api-guide/source/faults.rst":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5bd13bfd48c78db7f3933a0e0c3fffeccfed736b","unresolved":false,"context_lines":[{"line_number":110,"context_line":"Nova often adds an instance fault DB entry for an exception that happens"},{"line_number":111,"context_line":"while processing an API request. This often includes more administrator"},{"line_number":112,"context_line":"focused information, such as a stack trace. For a server with status"},{"line_number":113,"context_line":"``ERROR`` or ``DELETED``, a ``GET /servers/{server_id}`` request will include"},{"line_number":114,"context_line":"a ``fault`` object in the response body for the ``server`` resource. For"},{"line_number":115,"context_line":"example::"},{"line_number":116,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"9f6a8fd7_176bd9b6","line":113,"range":{"start_line":113,"start_character":57,"end_line":113,"end_character":77},"updated":"2018-04-23 17:55:51.000000000","message":"or s/request will include/API will return/ ?","commit_id":"88f86e24e121ba545012051b6587d7475bfc5cec"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5bd13bfd48c78db7f3933a0e0c3fffeccfed736b","unresolved":false,"context_lines":[{"line_number":110,"context_line":"Nova often adds an instance fault DB entry for an exception that happens"},{"line_number":111,"context_line":"while processing an API request. This often includes more administrator"},{"line_number":112,"context_line":"focused information, such as a stack trace. For a server with status"},{"line_number":113,"context_line":"``ERROR`` or ``DELETED``, a ``GET /servers/{server_id}`` request will include"},{"line_number":114,"context_line":"a ``fault`` object in the response body for the ``server`` resource. For"},{"line_number":115,"context_line":"example::"},{"line_number":116,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"9f6a8fd7_571f115a","line":113,"range":{"start_line":113,"start_character":57,"end_line":113,"end_character":64},"updated":"2018-04-23 17:55:51.000000000","message":"s/request/response/ ?","commit_id":"88f86e24e121ba545012051b6587d7475bfc5cec"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"ebe2e4802d563f071f4b970f619e196a23c04ba3","unresolved":false,"context_lines":[{"line_number":110,"context_line":"Nova often adds an instance fault DB entry for an exception that happens"},{"line_number":111,"context_line":"while processing an API request. This often includes more administrator"},{"line_number":112,"context_line":"focused information, such as a stack trace. For a server with status"},{"line_number":113,"context_line":"``ERROR`` or ``DELETED``, a ``GET /servers/{server_id}`` request will include"},{"line_number":114,"context_line":"a ``fault`` object in the response body for the ``server`` resource. For"},{"line_number":115,"context_line":"example::"},{"line_number":116,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"5f7c97a3_79aa3a71","line":113,"range":{"start_line":113,"start_character":57,"end_line":113,"end_character":64},"in_reply_to":"5f7c97a3_7c522d37","updated":"2018-05-30 20:31:05.000000000","message":"Yeah, I know. Then I was confused because they are opposite in the same line related to \"include\".\nIt is fine to go forward with current one and will change it when somebody will be confused again.","commit_id":"88f86e24e121ba545012051b6587d7475bfc5cec"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a04ab76479f05de964b0617e6d76f140b53038f0","unresolved":false,"context_lines":[{"line_number":110,"context_line":"Nova often adds an instance fault DB entry for an exception that happens"},{"line_number":111,"context_line":"while processing an API request. This often includes more administrator"},{"line_number":112,"context_line":"focused information, such as a stack trace. For a server with status"},{"line_number":113,"context_line":"``ERROR`` or ``DELETED``, a ``GET /servers/{server_id}`` request will include"},{"line_number":114,"context_line":"a ``fault`` object in the response body for the ``server`` resource. For"},{"line_number":115,"context_line":"example::"},{"line_number":116,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"5f7c97a3_7c522d37","line":113,"range":{"start_line":113,"start_character":57,"end_line":113,"end_character":64},"in_reply_to":"9f6a8fd7_571f115a","updated":"2018-05-30 17:05:33.000000000","message":"I don\u0027t agree with either suggestion. This is a GET /servers/{id} *request* and I say on the next line that the *response* body contains the fault object.","commit_id":"88f86e24e121ba545012051b6587d7475bfc5cec"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"5bd13bfd48c78db7f3933a0e0c3fffeccfed736b","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        \"fault\": {"},{"line_number":122,"context_line":"           \"created\": \"2018-04-10T13:49:40Z\","},{"line_number":123,"context_line":"           \"message\": \"No valid host was found.\","},{"line_number":124,"context_line":"           \"code\": 500"},{"line_number":125,"context_line":"        },"},{"line_number":126,"context_line":"        \"status\": \"ERROR\","},{"line_number":127,"context_line":"        ..."}],"source_content_type":"text/x-rst","patch_set":3,"id":"9f6a8fd7_b7d9cd57","line":124,"updated":"2018-04-23 17:55:51.000000000","message":"NoValidHost case is HTTP400, not 500:\n\nnova/api/openstack/compute/servers.py\n 817         except (exception.AutoDiskConfigDisabledByImage,\n 818                 exception.CannotResizeDisk,\n 819                 exception.CannotResizeToSameFlavor,\n 820                 exception.FlavorNotFound,\n 821                 exception.NoValidHost,\n 822                 exception.PciRequestAliasNotDefined) as e:\n 823             raise exc.HTTPBadRequest(explanation\u003de.format_message())","commit_id":"88f86e24e121ba545012051b6587d7475bfc5cec"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"ebe2e4802d563f071f4b970f619e196a23c04ba3","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        \"fault\": {"},{"line_number":122,"context_line":"           \"created\": \"2018-04-10T13:49:40Z\","},{"line_number":123,"context_line":"           \"message\": \"No valid host was found.\","},{"line_number":124,"context_line":"           \"code\": 500"},{"line_number":125,"context_line":"        },"},{"line_number":126,"context_line":"        \"status\": \"ERROR\","},{"line_number":127,"context_line":"        ..."}],"source_content_type":"text/x-rst","patch_set":3,"id":"5f7c97a3_791f9ab6","line":124,"in_reply_to":"5f7c97a3_472d1a93","updated":"2018-05-30 20:31:05.000000000","message":"What I pointed was for resize API as https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/servers.py#L832 , not GET/POST a server APIs.\n\nAs you said, GET/POST a server APIs don\u0027t catch NoValidHost exception. Then 500 error can happen. I am not sure the lack of exception catches is valid or not at this time.","commit_id":"88f86e24e121ba545012051b6587d7475bfc5cec"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"97128c6562a1ad7a30b909bb28f7c011691a95d5","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        \"fault\": {"},{"line_number":122,"context_line":"           \"created\": \"2018-04-10T13:49:40Z\","},{"line_number":123,"context_line":"           \"message\": \"No valid host was found.\","},{"line_number":124,"context_line":"           \"code\": 500"},{"line_number":125,"context_line":"        },"},{"line_number":126,"context_line":"        \"status\": \"ERROR\","},{"line_number":127,"context_line":"        ..."}],"source_content_type":"text/x-rst","patch_set":3,"id":"5f7c97a3_b978d2c3","line":124,"in_reply_to":"5f7c97a3_791f9ab6","updated":"2018-05-30 20:44:14.000000000","message":"If you get NoValidHost when creating a server, you\u0027ll have a 202 from the POST /servers request. The fault code is not the same as the API response status code. I can see how it might be confusing, but it\u0027s not the same thing.","commit_id":"88f86e24e121ba545012051b6587d7475bfc5cec"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a04ab76479f05de964b0617e6d76f140b53038f0","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        \"fault\": {"},{"line_number":122,"context_line":"           \"created\": \"2018-04-10T13:49:40Z\","},{"line_number":123,"context_line":"           \"message\": \"No valid host was found.\","},{"line_number":124,"context_line":"           \"code\": 500"},{"line_number":125,"context_line":"        },"},{"line_number":126,"context_line":"        \"status\": \"ERROR\","},{"line_number":127,"context_line":"        ..."}],"source_content_type":"text/x-rst","patch_set":3,"id":"5f7c97a3_472d1a93","line":124,"in_reply_to":"9f6a8fd7_b7d9cd57","updated":"2018-05-30 17:05:33.000000000","message":"I\u0027m not sure what you\u0027re referring to. When we create a server, we RPC cast to conductor which calls the scheduler and if that raises NoValidHost, we record the fault and that gets recorded with the 500 code:\n\nhttps://github.com/openstack/nova/blob/d741f624c81baf89fc8b6b94a2bc20eb5355a818/nova/compute/utils.py#L96","commit_id":"88f86e24e121ba545012051b6587d7475bfc5cec"}],"api-ref/source/parameters.yaml":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"e918cc2ce316ebd448281659b63f1ea48d42ad81","unresolved":false,"context_lines":[{"line_number":2456,"context_line":"  description: |"},{"line_number":2457,"context_line":"    A fault object. Only displayed for servers with status ``ERROR`` or"},{"line_number":2458,"context_line":"    ``DELETED``."},{"line_number":2459,"context_line":"    Default keys are ``code``, ``created``, and ``message``"},{"line_number":2460,"context_line":"    (response code, created time, and message respectively)."},{"line_number":2461,"context_line":"    In addition, the key ``details`` (stack trace) is available"},{"line_number":2462,"context_line":"    if you have the administrator privilege."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"bf659307_0f377601","line":2459,"range":{"start_line":2459,"start_character":4,"end_line":2459,"end_character":59},"updated":"2018-04-11 06:11:39.000000000","message":"We can add \u0027fault.code\u0027, \u0027fault.created\u0027 and \u0027fault.message\u0027 to describe the object.","commit_id":"c5e2409c93ab5bf257d310f3038f5283386bb2ca"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7509bb6b719f190c4a47e07164159eea1f228df6","unresolved":false,"context_lines":[{"line_number":2456,"context_line":"  description: |"},{"line_number":2457,"context_line":"    A fault object. Only displayed for servers with status ``ERROR`` or"},{"line_number":2458,"context_line":"    ``DELETED``."},{"line_number":2459,"context_line":"    Default keys are ``code``, ``created``, and ``message``"},{"line_number":2460,"context_line":"    (response code, created time, and message respectively)."},{"line_number":2461,"context_line":"    In addition, the key ``details`` (stack trace) is available"},{"line_number":2462,"context_line":"    if you have the administrator privilege."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"bf659307_56ee2ced","line":2459,"range":{"start_line":2459,"start_character":4,"end_line":2459,"end_character":59},"in_reply_to":"bf659307_0f377601","updated":"2018-04-12 20:21:51.000000000","message":"I\u0027ll have to see if that makes sense after the changes from https://review.openstack.org/#/c/550648/5/api-ref/source/servers.inc","commit_id":"c5e2409c93ab5bf257d310f3038f5283386bb2ca"}],"api-ref/source/servers.inc":[{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"e24e5153a6866d2e78806fdc3f15bfe28c726215","unresolved":false,"context_lines":[{"line_number":581,"context_line":"  - tenant_id: tenant_id_body"},{"line_number":582,"context_line":"  - updated: updated"},{"line_number":583,"context_line":"  - user_id: user_id"},{"line_number":584,"context_line":"  - fault: fault"},{"line_number":585,"context_line":"  - OS-EXT-SRV-ATTR:hostname: server_hostname"},{"line_number":586,"context_line":"  - OS-EXT-SRV-ATTR:reservation_id: server_reservation_id"},{"line_number":587,"context_line":"  - OS-EXT-SRV-ATTR:launch_index: server_launch_index"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"bf659307_1268f91a","line":584,"range":{"start_line":584,"start_character":0,"end_line":584,"end_character":16},"updated":"2018-04-11 06:41:40.000000000","message":"maybe my devstack is a little bit overtime, \nbut my tests shows this:\n\nhttp://paste.openstack.org/show/718883/","commit_id":"c5e2409c93ab5bf257d310f3038f5283386bb2ca"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"73385455415a46631d619af11e81984ae57f6609","unresolved":false,"context_lines":[{"line_number":581,"context_line":"  - tenant_id: tenant_id_body"},{"line_number":582,"context_line":"  - updated: updated"},{"line_number":583,"context_line":"  - user_id: user_id"},{"line_number":584,"context_line":"  - fault: fault"},{"line_number":585,"context_line":"  - OS-EXT-SRV-ATTR:hostname: server_hostname"},{"line_number":586,"context_line":"  - OS-EXT-SRV-ATTR:reservation_id: server_reservation_id"},{"line_number":587,"context_line":"  - OS-EXT-SRV-ATTR:launch_index: server_launch_index"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"bf659307_b670e873","line":584,"range":{"start_line":584,"start_character":0,"end_line":584,"end_character":16},"in_reply_to":"bf659307_1268f91a","updated":"2018-04-12 20:21:24.000000000","message":"I\u0027ll remove this since it\u0027s in https://review.openstack.org/#/c/550648/5/api-ref/source/servers.inc\n\nthe snip from that paste that shows the fault information is this:\n\n\"fault\":{\n         \"message\":\"Cannot access storage file \u0027/opt/stack/data/nova/instances/2ebb3db1-e99f-4b5c-85f4-ae3c9f93ca79/disk.swap\u0027 (as uid:64055, gid:124): No such file or directory\",\n         \"code\":500,\n         \"details\":\"  File \\\"/opt/stack/nova/nova/compute/manager.py\\\", line 202, in decorated_function\\n    return function(self, context, *args, **kwargs)\\n  File \\\"/opt/stack/nova/nova/compute/manager.py\\\", line 4448, in finish_resize\\n    disk_info, image_meta, bdms)\\n  File \\\"/opt/stack/nova/nova/compute/manager.py\\\", line 4413, in _finish_resize\\n    old_instance_type)\\n  File \\\"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py\\\", line 220, in __exit__\\n    self.force_reraise()\\n  File \\\"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py\\\", line 196, in force_reraise\\n    six.reraise(self.type_, self.value, self.tb)\\n  File \\\"/opt/stack/nova/nova/compute/manager.py\\\", line 4408, in _finish_resize\\n    block_device_info, power_on)\\n  File \\\"/opt/stack/nova/nova/virt/libvirt/driver.py\\\", line 8125, in finish_migration\\n    post_xml_callback\u003dgen_confdrive)\\n  File \\\"/opt/stack/nova/nova/virt/libvirt/driver.py\\\", line 5469, in _create_domain_and_network\\n    destroy_disks_on_failure)\\n  File \\\"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py\\\", line 220, in __exit__\\n    self.force_reraise()\\n  File \\\"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py\\\", line 196, in force_reraise\\n    six.reraise(self.type_, self.value, self.tb)\\n  File \\\"/opt/stack/nova/nova/virt/libvirt/driver.py\\\", line 5438, in _create_domain_and_network\\n    post_xml_callback\u003dpost_xml_callback)\\n  File \\\"/opt/stack/nova/nova/virt/libvirt/driver.py\\\", line 5373, in _create_domain\\n    guest.launch(pause\u003dpause)\\n  File \\\"/opt/stack/nova/nova/virt/libvirt/guest.py\\\", line 144, in launch\\n    self._encoded_xml, errors\u003d\u0027ignore\u0027)\\n  File \\\"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py\\\", line 220, in __exit__\\n    self.force_reraise()\\n  File \\\"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py\\\", line 196, in force_reraise\\n    six.reraise(self.type_, self.value, self.tb)\\n  File \\\"/opt/stack/nova/nova/virt/libvirt/guest.py\\\", line 139, in launch\\n    return self._domain.createWithFlags(flags)\\n  File \\\"/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py\\\", line 186, in doit\\n    result \u003d proxy_call(self._autowrap, f, *args, **kwargs)\\n  File \\\"/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py\\\", line 144, in proxy_call\\n    rv \u003d execute(f, *args, **kwargs)\\n  File \\\"/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py\\\", line 125, in execute\\n    six.reraise(c, e, tb)\\n  File \\\"/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py\\\", line 83, in tworker\\n    rv \u003d meth(*args, **kwargs)\\n  File \\\"/usr/local/lib/python2.7/dist-packages/libvirt.py\\\", line 1092, in createWithFlags\\n    if ret \u003d\u003d -1: raise libvirtError (\u0027virDomainCreateWithFlags() failed\u0027, dom\u003dself)\\n\",\n         \"created\":\"2018-04-10T02:07:55Z\"\n      },\n\nAnd you must be an admin user since you\u0027re getting the \"details\" entry.","commit_id":"c5e2409c93ab5bf257d310f3038f5283386bb2ca"}]}
