)]}'
{"nova/virt/libvirt/driver.py":[{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"9baec3f040a9aa2dcf5ae18699b1c7fdc3050bd4","unresolved":false,"context_lines":[{"line_number":4974,"context_line":"            try:"},{"line_number":4975,"context_line":"                vcpus \u003d guest.get_vcpus_info()"},{"line_number":4976,"context_line":"                total +\u003d len(list(vcpus))"},{"line_number":4977,"context_line":"            except libvirt.libvirtError:"},{"line_number":4978,"context_line":"                total +\u003d 1"},{"line_number":4979,"context_line":"            # NOTE(gtt116): give other tasks a chance."},{"line_number":4980,"context_line":"            greenthread.sleep(0)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba5da102_7b9b1b73","line":4977,"updated":"2016-11-04 06:20:27.000000000","message":"I understand the logic and it\u0027s something we should do but I think we should not call libvirt if we know that the call is going to raise an exception and that for every guests hosted on the compute node.\n\nI would recommend to add a condition for LXC to avoid calling libvirt.","commit_id":"8b41463a5584d617da57e7dff2ed6770eb301cef"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"e832bd116c2acc62118e300c6b1160e59544f798","unresolved":false,"context_lines":[{"line_number":4974,"context_line":"            try:"},{"line_number":4975,"context_line":"                vcpus \u003d guest.get_vcpus_info()"},{"line_number":4976,"context_line":"                total +\u003d len(list(vcpus))"},{"line_number":4977,"context_line":"            except libvirt.libvirtError:"},{"line_number":4978,"context_line":"                total +\u003d 1"},{"line_number":4979,"context_line":"            # NOTE(gtt116): give other tasks a chance."},{"line_number":4980,"context_line":"            greenthread.sleep(0)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba5da102_9b48ef8c","line":4977,"in_reply_to":"ba5da102_7b9b1b73","updated":"2016-11-04 06:46:27.000000000","message":"Oh o that exception is not only for LXC but also for TCG. if it\u0027s well defined we have it for virt_type qemu and lxc, I guess that condition to avoid calling libvirt is still valuable","commit_id":"8b41463a5584d617da57e7dff2ed6770eb301cef"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"a7218d85507c637405e1cbf70aad05bf1a91e84f","unresolved":false,"context_lines":[{"line_number":4974,"context_line":"            try:"},{"line_number":4975,"context_line":"                vcpus \u003d guest.get_vcpus_info()"},{"line_number":4976,"context_line":"                total +\u003d len(list(vcpus))"},{"line_number":4977,"context_line":"            except libvirt.libvirtError:"},{"line_number":4978,"context_line":"                total +\u003d 1"},{"line_number":4979,"context_line":"            # NOTE(gtt116): give other tasks a chance."},{"line_number":4980,"context_line":"            greenthread.sleep(0)"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba5da102_a2ed7ff1","line":4977,"in_reply_to":"ba5da102_9b48ef8c","updated":"2016-11-04 10:46:34.000000000","message":"We explicitly *want* to call it for TCG because in the near future it will support multi-threaded vCPUs. There\u0027s really no harm in calling it unconditionally - adding upfront checks just means Nova is broken if libvirt starts reporting the data in future.","commit_id":"8b41463a5584d617da57e7dff2ed6770eb301cef"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"ed9d2663f5db66e9228a9715020a52f4f061f13f","unresolved":false,"context_lines":[{"line_number":5133,"context_line":"        # thread. So both will report an exception when the vcpus()"},{"line_number":5134,"context_line":"        # API call is made. In such a case we should report the"},{"line_number":5135,"context_line":"        # guest as having 1 vCPU, since that lets us still do"},{"line_number":5136,"context_line":"        # CPU over commit calculations that apply as the totall"},{"line_number":5137,"context_line":"        # guest count scales."},{"line_number":5138,"context_line":"        #"},{"line_number":5139,"context_line":"        # It is also possible that we might see an exception if"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a6eadb0_5a4ede96","line":5136,"range":{"start_line":5136,"start_character":57,"end_line":5136,"end_character":63},"updated":"2016-12-14 16:38:15.000000000","message":"nit: total","commit_id":"4b7a3354d3549667c5c25ec7af1728b26eead66a"},{"author":{"_account_id":2271,"name":"Michael Still","email":"mikal@stillhq.com","username":"mikalstill"},"change_message_id":"003fbed2df97e713ec4193088207c869ddb6c614","unresolved":false,"context_lines":[{"line_number":5149,"context_line":"        # the next refresh of usage data."},{"line_number":5150,"context_line":"        #"},{"line_number":5151,"context_line":"        # Thus when getting an exception we always report 1 as the"},{"line_number":5152,"context_line":"        # vCPU count, as the least worst value."},{"line_number":5153,"context_line":"        for guest in self._host.list_guests():"},{"line_number":5154,"context_line":"            try:"},{"line_number":5155,"context_line":"                vcpus \u003d guest.get_vcpus_info()"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a6eadb0_5fecc329","line":5152,"updated":"2016-12-16 00:32:43.000000000","message":"There\u0027s a fair few grammar nits in this doc comment. Its not a big deal, but we should fix it before merge.","commit_id":"4b7a3354d3549667c5c25ec7af1728b26eead66a"}]}
