)]}'
{"nova/tests/test_xenapi.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"a9620767ccb8667f7a02f15ee45192e9d7f68b1a","unresolved":false,"context_lines":[{"line_number":3245,"context_line":"        )"},{"line_number":3246,"context_line":""},{"line_number":3247,"context_line":""},{"line_number":3248,"context_line":"class XenAPIGetUUID(test.TestCase):"},{"line_number":3249,"context_line":"    def test_get_this_vm_uuid_new_kernel(self):"},{"line_number":3250,"context_line":"        self.mox.StubOutWithMock(vm_utils, \u0027get_sys_hypervisor_uuid\u0027)"},{"line_number":3251,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAOH%2F%2F7YY%3D","line":3248,"updated":"2013-03-20 17:19:57.000000000","message":"Please move to nova.tests.xenapi.test_vm_utils.py","commit_id":"15868c2fb8eb00220e40d3ca8067cb34730ccdc4"}],"nova/virt/xenapi/vm_utils.py":[{"author":{"_account_id":475,"name":"Rick Harris","email":"rick.harris@rackspace.com","username":"rconradharris"},"change_message_id":"268214adb9ea2d066edbeecd1228ec3e4ed4575d","unresolved":false,"context_lines":[{"line_number":1920,"context_line":""},{"line_number":1921,"context_line":"def get_this_vm_uuid():"},{"line_number":1922,"context_line":"    out, err \u003d utils.execute(\u0027xenstore-read\u0027, \u0027domid\u0027, run_as_root\u003dTrue)"},{"line_number":1923,"context_line":"    domid\u003dint(out[0])"},{"line_number":1924,"context_line":"    out, err \u003d utils.execute(\u0027xenstore-read\u0027, \u0027/local/domain/%d/vm\u0027%domid, run_as_root\u003dTrue)"},{"line_number":1925,"context_line":"    return out[4:].strip()"},{"line_number":1926,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAOH%2F%2F9ZQ%3D","line":1923,"updated":"2013-03-19 14:49:12.000000000","message":"\u003d needs whitespace around it","commit_id":"a16755603061922d9fe407bc8fdce12adf5e7a43"},{"author":{"_account_id":5044,"name":"Mate Lakat","email":"mlakat@suse.com","username":"mate-lakat"},"change_message_id":"328756d61b64a748a327a3b96c11aaf07f7711fa","unresolved":false,"context_lines":[{"line_number":1919,"context_line":""},{"line_number":1920,"context_line":""},{"line_number":1921,"context_line":"def get_this_vm_uuid():"},{"line_number":1922,"context_line":"    out, err \u003d utils.execute(\u0027xenstore-read\u0027, \u0027domid\u0027, run_as_root\u003dTrue)"},{"line_number":1923,"context_line":"    domid \u003d int(out[0])"},{"line_number":1924,"context_line":"    out, err \u003d utils.execute(\u0027xenstore-read\u0027,"},{"line_number":1925,"context_line":"                             \u0027/local/domain/%d/vm\u0027 % domid, run_as_root\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAOH%2F%2F76E%3D","line":1922,"updated":"2013-03-20 09:43:33.000000000","message":"As this is more like a workaround, I would keep the original method of retrieving the uuid, and do the new way only if an exception occured. This way we won\u0027t be breaking backwards compatibility. The code should also communicate, that this is a workaround.","commit_id":"5516bda5cc4b84d48a90406e92f320f17ebb3c05"},{"author":{"_account_id":475,"name":"Rick Harris","email":"rick.harris@rackspace.com","username":"rconradharris"},"change_message_id":"89f02e5d44b5ecf1482ab9202e0b92c72b9bfa76","unresolved":false,"context_lines":[{"line_number":1926,"context_line":"def get_this_vm_uuid():"},{"line_number":1927,"context_line":"    try:"},{"line_number":1928,"context_line":"        return get_sys_hypervisor_uuid()"},{"line_number":1929,"context_line":"    except IOError:"},{"line_number":1930,"context_line":"        # Some guest kernels (without 5c13f8067745efc15f6ad0158b58d57c44104c25"},{"line_number":1931,"context_line":"        # cannot read from uuid after a reboot.  Fall back to trying xenstore."},{"line_number":1932,"context_line":"        domid, _ \u003d utils.execute(\u0027xenstore-read\u0027, \u0027domid\u0027, run_as_root\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOH%2F%2F7ds%3D","line":1929,"updated":"2013-03-20 16:09:28.000000000","message":"We might want to drop a link to the Ubuntu bug report which has a bit more info. Thoughts?","commit_id":"a4127f496ba55a3ff1a287101c05738f32bac07a"},{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"8ecabc91bc3148d746ab1b7903ce4f7f6f9230a0","unresolved":false,"context_lines":[{"line_number":1926,"context_line":"def get_this_vm_uuid():"},{"line_number":1927,"context_line":"    try:"},{"line_number":1928,"context_line":"        return get_sys_hypervisor_uuid()"},{"line_number":1929,"context_line":"    except IOError:"},{"line_number":1930,"context_line":"        # Some guest kernels (without 5c13f8067745efc15f6ad0158b58d57c44104c25"},{"line_number":1931,"context_line":"        # cannot read from uuid after a reboot.  Fall back to trying xenstore."},{"line_number":1932,"context_line":"        domid, _ \u003d utils.execute(\u0027xenstore-read\u0027, \u0027domid\u0027, run_as_root\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOH%2F%2F7cE%3D","line":1929,"in_reply_to":"AAAAOH%2F%2F7ds%3D","updated":"2013-03-20 16:20:48.000000000","message":"Done","commit_id":"a4127f496ba55a3ff1a287101c05738f32bac07a"},{"author":{"_account_id":475,"name":"Rick Harris","email":"rick.harris@rackspace.com","username":"rconradharris"},"change_message_id":"89f02e5d44b5ecf1482ab9202e0b92c72b9bfa76","unresolved":false,"context_lines":[{"line_number":1927,"context_line":"    try:"},{"line_number":1928,"context_line":"        return get_sys_hypervisor_uuid()"},{"line_number":1929,"context_line":"    except IOError:"},{"line_number":1930,"context_line":"        # Some guest kernels (without 5c13f8067745efc15f6ad0158b58d57c44104c25"},{"line_number":1931,"context_line":"        # cannot read from uuid after a reboot.  Fall back to trying xenstore."},{"line_number":1932,"context_line":"        domid, _ \u003d utils.execute(\u0027xenstore-read\u0027, \u0027domid\u0027, run_as_root\u003dTrue)"},{"line_number":1933,"context_line":"        vm_key, _ \u003d utils.execute(\u0027xenstore-read\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOH%2F%2F7eA%3D","line":1930,"updated":"2013-03-20 16:09:28.000000000","message":"Femto-nit: Unclosed paren.","commit_id":"a4127f496ba55a3ff1a287101c05738f32bac07a"},{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"8ecabc91bc3148d746ab1b7903ce4f7f6f9230a0","unresolved":false,"context_lines":[{"line_number":1927,"context_line":"    try:"},{"line_number":1928,"context_line":"        return get_sys_hypervisor_uuid()"},{"line_number":1929,"context_line":"    except IOError:"},{"line_number":1930,"context_line":"        # Some guest kernels (without 5c13f8067745efc15f6ad0158b58d57c44104c25"},{"line_number":1931,"context_line":"        # cannot read from uuid after a reboot.  Fall back to trying xenstore."},{"line_number":1932,"context_line":"        domid, _ \u003d utils.execute(\u0027xenstore-read\u0027, \u0027domid\u0027, run_as_root\u003dTrue)"},{"line_number":1933,"context_line":"        vm_key, _ \u003d utils.execute(\u0027xenstore-read\u0027,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAOH%2F%2F7cA%3D","line":1930,"in_reply_to":"AAAAOH%2F%2F7eA%3D","updated":"2013-03-20 16:20:48.000000000","message":"Done","commit_id":"a4127f496ba55a3ff1a287101c05738f32bac07a"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"3fea13b21164ca060b869c27e71a66d8baa5f22f","unresolved":false,"context_lines":[{"line_number":1918,"context_line":"        LOG.debug(_(\u0027Destroying VBD for VDI %s done.\u0027), vdi_ref)"},{"line_number":1919,"context_line":""},{"line_number":1920,"context_line":""},{"line_number":1921,"context_line":"def get_sys_hypervisor_uuid():"},{"line_number":1922,"context_line":"    with file(\u0027/sys/hypervisor/uuid\u0027) as f:"},{"line_number":1923,"context_line":"        return f.readline().strip()"},{"line_number":1924,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAOH%2F%2F6QI%3D","line":1921,"updated":"2013-03-21 09:33:06.000000000","message":"This should have an underscore really, stop people calling it directly by accident.","commit_id":"15868c2fb8eb00220e40d3ca8067cb34730ccdc4"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"3fea13b21164ca060b869c27e71a66d8baa5f22f","unresolved":false,"context_lines":[{"line_number":1927,"context_line":"    try:"},{"line_number":1928,"context_line":"        return get_sys_hypervisor_uuid()"},{"line_number":1929,"context_line":"    except IOError:"},{"line_number":1930,"context_line":"        # Some guest kernels (without 5c13f8067745efc15f6ad0158b58d57c44104c25)"},{"line_number":1931,"context_line":"        # cannot read from uuid after a reboot.  Fall back to trying xenstore."},{"line_number":1932,"context_line":"        # See https://bugs.launchpad.net/ubuntu/+source/xen-api/+bug/1081182"},{"line_number":1933,"context_line":"        domid, _ \u003d utils.execute(\u0027xenstore-read\u0027, \u0027domid\u0027, run_as_root\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAOH%2F%2F6QE%3D","line":1930,"updated":"2013-03-21 09:33:06.000000000","message":"There seems to be a habit of adding NOTE(bobball) for this kind of thing. But I use git blame myself.","commit_id":"15868c2fb8eb00220e40d3ca8067cb34730ccdc4"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"4768c0d6ffadcf95d2c7410766e29cc6c4e1e2ad","unresolved":false,"context_lines":[{"line_number":1934,"context_line":"        vm_key, _ \u003d utils.execute(\u0027xenstore-read\u0027,"},{"line_number":1935,"context_line":"                                 \u0027/local/domain/%s/vm\u0027 % domid.strip(),"},{"line_number":1936,"context_line":"                                 run_as_root\u003dTrue)"},{"line_number":1937,"context_line":"        return vm_key.strip()[4:]"},{"line_number":1938,"context_line":""},{"line_number":1939,"context_line":""},{"line_number":1940,"context_line":"def _get_this_vm_ref(session):"}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAOH%2F%2F5FQ%3D","line":1937,"updated":"2013-03-21 21:59:33.000000000","message":"Minor nit, but os.path.split might be better here.","commit_id":"d910e0e09d35da2ad06f648e8fd67e649d83beee"}]}
