)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"171b4bddcc0cc185bfc5c50460a88864f4b6ac03","unresolved":false,"context_lines":[{"line_number":10,"context_line":"917afd2831be8107177f50f277e400e03f896f74."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I0425b254595371eaa618b10d8c81520b0f6018a5"},{"line_number":13,"context_line":"Related-Bug: #1615613"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"9a89bdaa_0ae4c3a9","line":13,"updated":"2016-09-13 13:54:42.000000000","message":"Does this also fix bug 1455252?","commit_id":"2ba8fd42901c49a698b8f85f6d8058ce606380d8"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"f7790d9ce142c6197725f32d571608ad249e57af","unresolved":false,"context_lines":[{"line_number":10,"context_line":"917afd2831be8107177f50f277e400e03f896f74."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I0425b254595371eaa618b10d8c81520b0f6018a5"},{"line_number":13,"context_line":"Related-Bug: #1615613"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"9a89bdaa_3099f679","line":13,"in_reply_to":"9a89bdaa_0ae4c3a9","updated":"2016-09-13 14:14:23.000000000","message":"No, bug 1455252 is purely a serial console issue where the \"libvirt.xml\" needs to be updated to use un-allocated ports of the target host. That will be fixed in https://review.openstack.org/#/c/275801/ which needs to be rebased after this change here merges.","commit_id":"2ba8fd42901c49a698b8f85f6d8058ce606380d8"}],"nova/tests/unit/virt/libvirt/test_driver.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"0073dc4e4e0f1540f1233b2b2667dd95bf9fa072","unresolved":false,"context_lines":[{"line_number":7960,"context_line":"        instance_ref \u003d objects.Instance(**instance_dict)"},{"line_number":7961,"context_line":""},{"line_number":7962,"context_line":"        # Preparing mocks"},{"line_number":7963,"context_line":"        vdmock \u003d self.mox.CreateMock(fakelibvirt.virDomain)"},{"line_number":7964,"context_line":"        self.mox.StubOutWithMock(vdmock, \"migrateToURI\")"},{"line_number":7965,"context_line":""},{"line_number":7966,"context_line":"        # start test"}],"source_content_type":"text/x-python","patch_set":2,"id":"9a89bdaa_2f18f9d2","line":7963,"updated":"2016-09-12 14:33:48.000000000","message":"Yes, yes, I know, but this is really a revert.","commit_id":"2ba8fd42901c49a698b8f85f6d8058ce606380d8"}],"nova/virt/libvirt/driver.py":[{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"7c48a58bc556712d54beb53998bf43b6cfb44353","unresolved":false,"context_lines":[{"line_number":5826,"context_line":"                migrate_data)"},{"line_number":5827,"context_line":""},{"line_number":5828,"context_line":"            migratable_flag \u003d self._host.is_migratable_xml_flag()"},{"line_number":5829,"context_line":"            if not migratable_flag or not listen_addrs:"},{"line_number":5830,"context_line":"                # In this context want to ensure we do not have to migrate"},{"line_number":5831,"context_line":"                # graphic or serial consoles since we can\u0027t update guest\u0027s"},{"line_number":5832,"context_line":"                # domain XML to make it handle destination host."}],"source_content_type":"text/x-python","patch_set":2,"id":"9a89bdaa_03f78e59","line":5829,"range":{"start_line":5829,"start_character":42,"end_line":5829,"end_character":54},"updated":"2016-09-12 15:26:32.000000000","message":"My local test did succeed, but it *shouldn\u0027t*... I\u0027m missing something. This \"listen_addr\" is *only* set when VNC or SPICE is configured. If VNC and SPICE are not set, this \"listen_addr\" should be empty as the method \"serial_listen_addr\" of the \"libvirt_migrate\" object is never called: https://github.com/openstack/nova/blob/4f33047d07f5a11b208c344fe206aba01cd8e6fe/nova/virt/libvirt/migration.py#L50-L50\n\nI fixed this here: https://review.openstack.org/#/c/335132/8/nova/virt/libvirt/driver.py","commit_id":"2ba8fd42901c49a698b8f85f6d8058ce606380d8"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"ef6460bd914405ffda6466b927dac4b22d381bb4","unresolved":false,"context_lines":[{"line_number":5826,"context_line":"                migrate_data)"},{"line_number":5827,"context_line":""},{"line_number":5828,"context_line":"            migratable_flag \u003d self._host.is_migratable_xml_flag()"},{"line_number":5829,"context_line":"            if not migratable_flag or not listen_addrs:"},{"line_number":5830,"context_line":"                # In this context want to ensure we do not have to migrate"},{"line_number":5831,"context_line":"                # graphic or serial consoles since we can\u0027t update guest\u0027s"},{"line_number":5832,"context_line":"                # domain XML to make it handle destination host."}],"source_content_type":"text/x-python","patch_set":2,"id":"9a89bdaa_895c9d7e","line":5829,"range":{"start_line":5829,"start_character":42,"end_line":5829,"end_character":54},"in_reply_to":"9a89bdaa_03f78e59","updated":"2016-09-12 15:49:16.000000000","message":"OK, I understand it now. I think it works by mistake. The LibvirtMigrationData objects get filled *unconditionally* in the `pre_live_migration` method with the default values of the config options.\n\nhttps://github.com/openstack/nova/blob/be553fb15591c6fc212ef3a07c1dd1cbc43d6866/nova/virt/libvirt/driver.py#L6489-L6490\n\nVNC and SPICE addresses will *never be empty* unless one specifically unsets the default values in the `nova.conf`. That\u0027s why the \"libvirt/migration\" module always returns a dict with the default config option values:\n\nhttps://github.com/openstack/nova/blob/4f33047d07f5a11b208c344fe206aba01cd8e6fe/nova/virt/libvirt/migration.py#L36-L47\n\nAssumed one has a libvirt version which is able to update the domain XML, the check if we can live-migrate is a no-op:\n\nhttps://github.com/openstack/nova/blob/be553fb15591c6fc212ef3a07c1dd1cbc43d6866/nova/virt/libvirt/driver.py#L5415\n\nAnd if I understand it correctly, we have a min_libvirt_version which always\nhas the migratable flag, so it\u0027s definitely a no-op now:\n\nhttps://review.openstack.org/#/c/310352/\n\nLong story short, the code is crude, but it solves the issue good enough for the Newton RC. After the Newton release we should definately rework these bits and pieces.","commit_id":"2ba8fd42901c49a698b8f85f6d8058ce606380d8"},{"author":{"_account_id":12299,"name":"Paweł Koniszewski","email":"pawel.koniszewski@gmail.com","username":"pawel.koniszewski"},"change_message_id":"c64a3fddde50e5008d0cc0ccfbd338742debc13e","unresolved":false,"context_lines":[{"line_number":5826,"context_line":"                migrate_data)"},{"line_number":5827,"context_line":""},{"line_number":5828,"context_line":"            migratable_flag \u003d self._host.is_migratable_xml_flag()"},{"line_number":5829,"context_line":"            if not migratable_flag or not listen_addrs:"},{"line_number":5830,"context_line":"                # In this context want to ensure we do not have to migrate"},{"line_number":5831,"context_line":"                # graphic or serial consoles since we can\u0027t update guest\u0027s"},{"line_number":5832,"context_line":"                # domain XML to make it handle destination host."}],"source_content_type":"text/x-python","patch_set":2,"id":"9a89bdaa_df3c7795","line":5829,"range":{"start_line":5829,"start_character":42,"end_line":5829,"end_character":54},"in_reply_to":"9a89bdaa_895c9d7e","updated":"2016-09-13 06:28:12.000000000","message":"+++, I agree that it needs a rework, e.g., this code will never be executed https://github.com/openstack/nova/blob/7b6888b9b6bbc03f2032898512c1bd382ec095a5/nova/virt/libvirt/driver.py#L5789","commit_id":"2ba8fd42901c49a698b8f85f6d8058ce606380d8"}]}
