)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"24dd6f8e120bf3868b525c07d2e8a2fefb2237cc","unresolved":false,"context_lines":[{"line_number":7,"context_line":"pci: Remove is_new from pci request"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"pci cleanup patch to remove the is_new field in pci request"},{"line_number":10,"context_line":"The is_newer was horrible hack to get the newer pci request"},{"line_number":11,"context_line":"which didn\u0027t work anyway"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Ie36a74fb2aad9a14a2dc0e0b53649ee770fb2f9d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a122d0e_7d985ec0","line":10,"updated":"2016-04-29 13:47:59.000000000","message":"s/is_newer/is_new/","commit_id":"9467526045cfccbe3c4247f50538c541c00fd61b"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"5442bf126ab890ee0ac33b6ef7419324b425d7ae","unresolved":false,"context_lines":[{"line_number":7,"context_line":"pci: Remove is_new from pci request"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"pci cleanup patch to remove the is_new field in pci request"},{"line_number":10,"context_line":"The is_newer was horrible hack to get the newer pci request"},{"line_number":11,"context_line":"which didn\u0027t work anyway"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Ie36a74fb2aad9a14a2dc0e0b53649ee770fb2f9d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a122d0e_a46022d0","line":10,"in_reply_to":"1a122d0e_7d985ec0","updated":"2016-04-29 23:40:44.000000000","message":"Done","commit_id":"9467526045cfccbe3c4247f50538c541c00fd61b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"643357731cdcd6344f15b12d56df47d04cc19ee4","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"pci: Deprecate is_new from pci request"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"pci cleanup patch to deprecate the is_new field in pci request"},{"line_number":10,"context_line":"The is_new was horrible hack to get the newer pci request"},{"line_number":11,"context_line":"which didn\u0027t work anyway"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Ie36a74fb2aad9a14a2dc0e0b53649ee770fb2f9d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"dab17558_95fc2973","line":11,"range":{"start_line":9,"start_character":0,"end_line":11,"end_character":24},"updated":"2016-05-17 13:39:02.000000000","message":"As a newcomer to this code, it\u0027d be helpful if there was some background on why this was a horrible hack and why it doesn\u0027t work, and why it\u0027s then safe to not use it.\n\nIt sounds like this came out of comments from Nikola in:\n\nhttps://review.openstack.org/#/c/301307/3/nova/compute/resource_tracker.py\n\nBut that\u0027s lost a bit here.\n\nYou should maybe also point out that the right way to do this, as ndipanov noted, was like we do for old/new flavors during migration, and stash that information for old/new pci requests in the migration context, which you\u0027re doing here:\n\nhttps://review.openstack.org/#/c/307124/\n\nBut I\u0027m wondering if it\u0027s OK to land this deprecation/cleanup patch before https://review.openstack.org/#/c/307124/ or if it doesn\u0027t matter.","commit_id":"0ca67a67fb95e2327fd71dd41f7f1a6d3cd957fa"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"f41f5c1d5e35005fc7f2a878fff216d54afb8a94","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"pci: Deprecate is_new from pci request"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"pci cleanup patch to deprecate the is_new field in pci request"},{"line_number":10,"context_line":"The is_new was horrible hack to get the newer pci request"},{"line_number":11,"context_line":"which didn\u0027t work anyway"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Ie36a74fb2aad9a14a2dc0e0b53649ee770fb2f9d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"dab17558_5eae5d81","line":11,"range":{"start_line":9,"start_character":0,"end_line":11,"end_character":24},"in_reply_to":"dab17558_95fc2973","updated":"2016-05-17 14:45:31.000000000","message":"I am not sure I have the answer for all you questions.\nI think some of the pci logic got lost with refactoring and doesn\u0027t make sense anymore (at least to me:)) I will clarify the commit message more with the thing I know.\n\nI will make this patch depended on the the resize patch https://review.openstack.org/#/c/307124/","commit_id":"0ca67a67fb95e2327fd71dd41f7f1a6d3cd957fa"}],"nova/objects/instance_pci_requests.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"50d2c6300080a525bfd7c01485f8bc73dd48e67f","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        \u0027spec\u0027: fields.ListOfDictOfNullableStringsField(),"},{"line_number":32,"context_line":"        \u0027alias_name\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":33,"context_line":"        # A stashed request related to a resize, not current"},{"line_number":34,"context_line":"        \u0027is_new\u0027: fields.BooleanField(default\u003dFalse),"},{"line_number":35,"context_line":"        \u0027request_id\u0027: fields.UUIDField(nullable\u003dTrue),"},{"line_number":36,"context_line":"    }"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_51a0f38f","side":"PARENT","line":34,"updated":"2016-04-29 12:04:55.000000000","message":"You can\u0027t remove this without a major bump.","commit_id":"2b65c79934d1a0c8114560f8723a672df5fbc5a9"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"5442bf126ab890ee0ac33b6ef7419324b425d7ae","unresolved":false,"context_lines":[{"line_number":31,"context_line":"        \u0027spec\u0027: fields.ListOfDictOfNullableStringsField(),"},{"line_number":32,"context_line":"        \u0027alias_name\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":33,"context_line":"        # A stashed request related to a resize, not current"},{"line_number":34,"context_line":"        \u0027is_new\u0027: fields.BooleanField(default\u003dFalse),"},{"line_number":35,"context_line":"        \u0027request_id\u0027: fields.UUIDField(nullable\u003dTrue),"},{"line_number":36,"context_line":"    }"},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_219d240a","side":"PARENT","line":34,"in_reply_to":"1a122d0e_51a0f38f","updated":"2016-04-29 23:40:44.000000000","message":"Ok just deprecating it","commit_id":"2b65c79934d1a0c8114560f8723a672df5fbc5a9"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"50d2c6300080a525bfd7c01485f8bc73dd48e67f","unresolved":false,"context_lines":[{"line_number":100,"context_line":"        return cls.obj_from_db(context, instance_uuid, db_pci_requests)"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    @classmethod"},{"line_number":103,"context_line":"    def get_by_instance_uuid_and_newness(cls, context, instance_uuid, is_new):"},{"line_number":104,"context_line":"        requests \u003d cls.get_by_instance_uuid(context, instance_uuid)"},{"line_number":105,"context_line":"        requests.requests \u003d [x for x in requests.requests"},{"line_number":106,"context_line":"                             if x.new \u003d\u003d is_new]"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_71d36f04","side":"PARENT","line":103,"updated":"2016-04-29 12:04:55.000000000","message":"Removing this is okay because it\u0027s not remotable","commit_id":"2b65c79934d1a0c8114560f8723a672df5fbc5a9"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"50d2c6300080a525bfd7c01485f8bc73dd48e67f","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    def obj_make_compatible(self, primitive, target_version):"},{"line_number":41,"context_line":"        target_version \u003d versionutils.convert_version_to_tuple(target_version)"},{"line_number":42,"context_line":"        if target_version \u003e (1, 1) and \u0027is_new\u0027 in primitive:"},{"line_number":43,"context_line":"            del primitive[\u0027is_new\u0027]"},{"line_number":44,"context_line":"        if target_version \u003c (1, 1) and \u0027request_id\u0027 in primitive:"},{"line_number":45,"context_line":"            del primitive[\u0027request_id\u0027]"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_31ae1781","line":43,"updated":"2016-04-29 12:04:55.000000000","message":"This is the wrong direction. If is_new isn\u0027t going to be filled out in later versions, you need to _put_ a value in it that will make older clients happy in this clause, if we\u0027re backporting from 1.2 to earlier.","commit_id":"9467526045cfccbe3c4247f50538c541c00fd61b"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"5442bf126ab890ee0ac33b6ef7419324b425d7ae","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    def obj_make_compatible(self, primitive, target_version):"},{"line_number":41,"context_line":"        target_version \u003d versionutils.convert_version_to_tuple(target_version)"},{"line_number":42,"context_line":"        if target_version \u003e (1, 1) and \u0027is_new\u0027 in primitive:"},{"line_number":43,"context_line":"            del primitive[\u0027is_new\u0027]"},{"line_number":44,"context_line":"        if target_version \u003c (1, 1) and \u0027request_id\u0027 in primitive:"},{"line_number":45,"context_line":"            del primitive[\u0027request_id\u0027]"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_13466c21","line":43,"in_reply_to":"1a122d0e_31ae1781","updated":"2016-04-29 23:40:44.000000000","message":"Done","commit_id":"9467526045cfccbe3c4247f50538c541c00fd61b"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"50d2c6300080a525bfd7c01485f8bc73dd48e67f","unresolved":false,"context_lines":[{"line_number":77,"context_line":"        for request in requests:"},{"line_number":78,"context_line":"            request_obj \u003d InstancePCIRequest("},{"line_number":79,"context_line":"                count\u003drequest[\u0027count\u0027], spec\u003drequest[\u0027spec\u0027],"},{"line_number":80,"context_line":"                alias_name\u003drequest[\u0027alias_name\u0027],"},{"line_number":81,"context_line":"                request_id\u003drequest[\u0027request_id\u0027])"},{"line_number":82,"context_line":"            request_obj.obj_reset_changes()"},{"line_number":83,"context_line":"            self.requests.append(request_obj)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_f1de5f0f","line":80,"updated":"2016-04-29 12:04:55.000000000","message":"You can stop loading it from the database if you want, as long as you maintain the contract necessary to keep older (i.e. mitaka) nodes happy.","commit_id":"9467526045cfccbe3c4247f50538c541c00fd61b"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"e941956243a55d0fed77f34b41dfd4efb926fbe5","unresolved":false,"context_lines":[{"line_number":84,"context_line":"        for request in requests:"},{"line_number":85,"context_line":"            request_obj \u003d InstancePCIRequest("},{"line_number":86,"context_line":"                count\u003drequest[\u0027count\u0027], spec\u003drequest[\u0027spec\u0027],"},{"line_number":87,"context_line":"                alias_name\u003drequest[\u0027alias_name\u0027], is_new\u003drequest[\u0027is_new\u0027],"},{"line_number":88,"context_line":"                request_id\u003drequest[\u0027request_id\u0027])"},{"line_number":89,"context_line":"            request_obj.obj_reset_changes()"},{"line_number":90,"context_line":"            self.requests.append(request_obj)"}],"source_content_type":"text/x-python","patch_set":3,"id":"dab17558_f8c51c8e","side":"PARENT","line":87,"range":{"start_line":87,"start_character":50,"end_line":87,"end_character":75},"updated":"2016-05-09 18:45:12.000000000","message":"If you\u0027re no longer loading this, aren\u0027t you going to cause older clients to  do something undesirable if this is missing? Meaning, don\u0027t you need to set is_new in obj_make_compatible for older clients?","commit_id":"afce1f2c1c9b6e1d9950887caaf1f9c5c04d9b6a"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"a7c81d3c3152d24c99e0eeb9438b1851eaff3b47","unresolved":false,"context_lines":[{"line_number":84,"context_line":"        for request in requests:"},{"line_number":85,"context_line":"            request_obj \u003d InstancePCIRequest("},{"line_number":86,"context_line":"                count\u003drequest[\u0027count\u0027], spec\u003drequest[\u0027spec\u0027],"},{"line_number":87,"context_line":"                alias_name\u003drequest[\u0027alias_name\u0027], is_new\u003drequest[\u0027is_new\u0027],"},{"line_number":88,"context_line":"                request_id\u003drequest[\u0027request_id\u0027])"},{"line_number":89,"context_line":"            request_obj.obj_reset_changes()"},{"line_number":90,"context_line":"            self.requests.append(request_obj)"}],"source_content_type":"text/x-python","patch_set":3,"id":"bab6814e_3c29c8e6","side":"PARENT","line":87,"range":{"start_line":87,"start_character":50,"end_line":87,"end_character":75},"in_reply_to":"dab17558_e1aef783","updated":"2016-05-23 18:16:00.000000000","message":"That\u0027s not true. It will remain unset on the object and anything that references it in any way will trigger a lazy load (which will fail because it\u0027s not implemented here).","commit_id":"afce1f2c1c9b6e1d9950887caaf1f9c5c04d9b6a"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"df0ebc10e20142fdd08eefb3d5359d906232da72","unresolved":false,"context_lines":[{"line_number":84,"context_line":"        for request in requests:"},{"line_number":85,"context_line":"            request_obj \u003d InstancePCIRequest("},{"line_number":86,"context_line":"                count\u003drequest[\u0027count\u0027], spec\u003drequest[\u0027spec\u0027],"},{"line_number":87,"context_line":"                alias_name\u003drequest[\u0027alias_name\u0027], is_new\u003drequest[\u0027is_new\u0027],"},{"line_number":88,"context_line":"                request_id\u003drequest[\u0027request_id\u0027])"},{"line_number":89,"context_line":"            request_obj.obj_reset_changes()"},{"line_number":90,"context_line":"            self.requests.append(request_obj)"}],"source_content_type":"text/x-python","patch_set":3,"id":"dab17558_e1aef783","side":"PARENT","line":87,"range":{"start_line":87,"start_character":50,"end_line":87,"end_character":75},"in_reply_to":"dab17558_f8c51c8e","updated":"2016-05-10 05:12:56.000000000","message":"Because I am not loading is_new from the DB it will get the default value which is false. So I don\u0027t think it will be a problem.","commit_id":"afce1f2c1c9b6e1d9950887caaf1f9c5c04d9b6a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8417dd7f0c56e16f02dfc3d5e5db4a29aef9eef6","unresolved":false,"context_lines":[{"line_number":103,"context_line":"        for db_request in db_requests:"},{"line_number":104,"context_line":"            request \u003d InstancePCIRequest("},{"line_number":105,"context_line":"                count\u003ddb_request[\u0027count\u0027], spec\u003ddb_request[\u0027spec\u0027],"},{"line_number":106,"context_line":"                alias_name\u003ddb_request[\u0027alias_name\u0027], is_new\u003dis_new)"},{"line_number":107,"context_line":"            request.obj_reset_changes()"},{"line_number":108,"context_line":"            requests.append(request)"},{"line_number":109,"context_line":"        return requests"}],"source_content_type":"text/x-python","patch_set":4,"id":"dab17558_d5b19148","line":106,"range":{"start_line":106,"start_character":53,"end_line":106,"end_character":66},"updated":"2016-05-17 13:36:02.000000000","message":"What about this?","commit_id":"0ca67a67fb95e2327fd71dd41f7f1a6d3cd957fa"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"f41f5c1d5e35005fc7f2a878fff216d54afb8a94","unresolved":false,"context_lines":[{"line_number":103,"context_line":"        for db_request in db_requests:"},{"line_number":104,"context_line":"            request \u003d InstancePCIRequest("},{"line_number":105,"context_line":"                count\u003ddb_request[\u0027count\u0027], spec\u003ddb_request[\u0027spec\u0027],"},{"line_number":106,"context_line":"                alias_name\u003ddb_request[\u0027alias_name\u0027], is_new\u003dis_new)"},{"line_number":107,"context_line":"            request.obj_reset_changes()"},{"line_number":108,"context_line":"            requests.append(request)"},{"line_number":109,"context_line":"        return requests"}],"source_content_type":"text/x-python","patch_set":4,"id":"dab17558_3e3c39e0","line":106,"range":{"start_line":106,"start_character":53,"end_line":106,"end_character":66},"in_reply_to":"dab17558_d5b19148","updated":"2016-05-17 14:45:31.000000000","message":"I was talking to Dan in the Summit on this and he suggested to keep it for backport compatible. It seems that in the old days pci_request was save in the system meta.\nanyway because the resize/migration don\u0027t works from Juno or IceHouse it think we can remove this as well.","commit_id":"0ca67a67fb95e2327fd71dd41f7f1a6d3cd957fa"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8417dd7f0c56e16f02dfc3d5e5db4a29aef9eef6","unresolved":false,"context_lines":[{"line_number":119,"context_line":"            _requests \u003d ("},{"line_number":120,"context_line":"                cls._load_legacy_requests(sysmeta[\u0027pci_requests\u0027]) +"},{"line_number":121,"context_line":"                cls._load_legacy_requests(sysmeta.get(\u0027new_pci_requests\u0027),"},{"line_number":122,"context_line":"                                          is_new\u003dTrue))"},{"line_number":123,"context_line":"            requests \u003d cls(instance_uuid\u003dinstance[\u0027uuid\u0027], requests\u003d_requests)"},{"line_number":124,"context_line":"            requests.obj_reset_changes()"},{"line_number":125,"context_line":"            return requests"}],"source_content_type":"text/x-python","patch_set":4,"id":"dab17558_15b83929","line":122,"range":{"start_line":122,"start_character":42,"end_line":122,"end_character":53},"updated":"2016-05-17 13:36:02.000000000","message":"Looks like this is where it\u0027s set.","commit_id":"0ca67a67fb95e2327fd71dd41f7f1a6d3cd957fa"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"f41f5c1d5e35005fc7f2a878fff216d54afb8a94","unresolved":false,"context_lines":[{"line_number":119,"context_line":"            _requests \u003d ("},{"line_number":120,"context_line":"                cls._load_legacy_requests(sysmeta[\u0027pci_requests\u0027]) +"},{"line_number":121,"context_line":"                cls._load_legacy_requests(sysmeta.get(\u0027new_pci_requests\u0027),"},{"line_number":122,"context_line":"                                          is_new\u003dTrue))"},{"line_number":123,"context_line":"            requests \u003d cls(instance_uuid\u003dinstance[\u0027uuid\u0027], requests\u003d_requests)"},{"line_number":124,"context_line":"            requests.obj_reset_changes()"},{"line_number":125,"context_line":"            return requests"}],"source_content_type":"text/x-python","patch_set":4,"id":"dab17558_2906c185","line":122,"range":{"start_line":122,"start_character":42,"end_line":122,"end_character":53},"in_reply_to":"dab17558_15b83929","updated":"2016-05-17 14:45:31.000000000","message":"yes, this is the only place and it for legacy instance that save the pci_request instance.system_metadata instead of instance_extra\nwhich means that in the new way the is_new is never used.\n\nI am not sure how to handle the instance part legacy.","commit_id":"0ca67a67fb95e2327fd71dd41f7f1a6d3cd957fa"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"cf9da60a31194b0d51189659d29715c4d0002b74","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            # from db"},{"line_number":80,"context_line":"            request_obj \u003d InstancePCIRequest("},{"line_number":81,"context_line":"                count\u003drequest[\u0027count\u0027], spec\u003drequest[\u0027spec\u0027],"},{"line_number":82,"context_line":"                alias_name\u003drequest[\u0027alias_name\u0027],"},{"line_number":83,"context_line":"                request_id\u003drequest[\u0027request_id\u0027])"},{"line_number":84,"context_line":"            request_obj.obj_reset_changes()"},{"line_number":85,"context_line":"            self.requests.append(request_obj)"}],"source_content_type":"text/x-python","patch_set":7,"id":"bab6814e_7c76b006","line":82,"updated":"2016-05-23 18:16:34.000000000","message":"For safety, you should set is_new\u003dFalse explicitly before you return from this method.","commit_id":"2b9959966492dd72694ffc7d6dd5c6036fdd6b99"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"27f9d46a7a9cd91e4ce5464760f8bd2d736488af","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            # from db"},{"line_number":80,"context_line":"            request_obj \u003d InstancePCIRequest("},{"line_number":81,"context_line":"                count\u003drequest[\u0027count\u0027], spec\u003drequest[\u0027spec\u0027],"},{"line_number":82,"context_line":"                alias_name\u003drequest[\u0027alias_name\u0027],"},{"line_number":83,"context_line":"                request_id\u003drequest[\u0027request_id\u0027])"},{"line_number":84,"context_line":"            request_obj.obj_reset_changes()"},{"line_number":85,"context_line":"            self.requests.append(request_obj)"}],"source_content_type":"text/x-python","patch_set":7,"id":"bab6814e_1d62e216","line":82,"in_reply_to":"bab6814e_7c76b006","updated":"2016-05-24 10:56:59.000000000","message":"Done","commit_id":"2b9959966492dd72694ffc7d6dd5c6036fdd6b99"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"38cc83b92952e7b31b2c91ea03c105f1b9f37623","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        \u0027count\u0027: fields.IntegerField(),"},{"line_number":31,"context_line":"        \u0027spec\u0027: fields.ListOfDictOfNullableStringsField(),"},{"line_number":32,"context_line":"        \u0027alias_name\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":33,"context_line":"        # Note: is_new is deprecated and should be removed"},{"line_number":34,"context_line":"        # on major version bump"},{"line_number":35,"context_line":"        \u0027is_new\u0027: fields.BooleanField(default\u003dFalse),"},{"line_number":36,"context_line":"        \u0027request_id\u0027: fields.UUIDField(nullable\u003dTrue),"}],"source_content_type":"text/x-python","patch_set":14,"id":"7aa08908_f6127b57","line":33,"range":{"start_line":33,"start_character":10,"end_line":33,"end_character":14},"updated":"2016-06-10 07:57:38.000000000","message":"Nit: we normally do NOTE(name)","commit_id":"0761ac4d2d4962afd7fbc42903d5cb37a37dde97"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"8b5c55a240e98f079824423e7dec86f8250a78cd","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        \u0027count\u0027: fields.IntegerField(),"},{"line_number":31,"context_line":"        \u0027spec\u0027: fields.ListOfDictOfNullableStringsField(),"},{"line_number":32,"context_line":"        \u0027alias_name\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":33,"context_line":"        # Note: is_new is deprecated and should be removed"},{"line_number":34,"context_line":"        # on major version bump"},{"line_number":35,"context_line":"        \u0027is_new\u0027: fields.BooleanField(default\u003dFalse),"},{"line_number":36,"context_line":"        \u0027request_id\u0027: fields.UUIDField(nullable\u003dTrue),"}],"source_content_type":"text/x-python","patch_set":14,"id":"7aa08908_b7d61fef","line":33,"range":{"start_line":33,"start_character":10,"end_line":33,"end_character":14},"in_reply_to":"7aa08908_f6127b57","updated":"2016-06-10 13:38:34.000000000","message":"Done","commit_id":"0761ac4d2d4962afd7fbc42903d5cb37a37dde97"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"38cc83b92952e7b31b2c91ea03c105f1b9f37623","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            # with default value of False"},{"line_number":80,"context_line":"            request_obj \u003d InstancePCIRequest("},{"line_number":81,"context_line":"                count\u003drequest[\u0027count\u0027], spec\u003drequest[\u0027spec\u0027],"},{"line_number":82,"context_line":"                alias_name\u003drequest[\u0027alias_name\u0027], is_new\u003dFalse,"},{"line_number":83,"context_line":"                request_id\u003drequest[\u0027request_id\u0027])"},{"line_number":84,"context_line":"            request_obj.obj_reset_changes()"},{"line_number":85,"context_line":"            self.requests.append(request_obj)"}],"source_content_type":"text/x-python","patch_set":14,"id":"7aa08908_76e84b17","line":82,"updated":"2016-06-10 07:57:38.000000000","message":"If we don\u0027t get this data, how do we supply the correct data to old computes? or does this not yet used there?","commit_id":"0761ac4d2d4962afd7fbc42903d5cb37a37dde97"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"8b5c55a240e98f079824423e7dec86f8250a78cd","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            # with default value of False"},{"line_number":80,"context_line":"            request_obj \u003d InstancePCIRequest("},{"line_number":81,"context_line":"                count\u003drequest[\u0027count\u0027], spec\u003drequest[\u0027spec\u0027],"},{"line_number":82,"context_line":"                alias_name\u003drequest[\u0027alias_name\u0027], is_new\u003dFalse,"},{"line_number":83,"context_line":"                request_id\u003drequest[\u0027request_id\u0027])"},{"line_number":84,"context_line":"            request_obj.obj_reset_changes()"},{"line_number":85,"context_line":"            self.requests.append(request_obj)"}],"source_content_type":"text/x-python","patch_set":14,"id":"7aa08908_924b312b","line":82,"in_reply_to":"7aa08908_76e84b17","updated":"2016-06-10 13:38:34.000000000","message":"so the is_new was used when vm with pci device was resize or migrate. This didn\u0027t doesn\u0027t from Juno release or even earlier release. So I would say all the vms will have the is_new\u003dFalse anyhow because the resize was borken.\nFor now we are keeping the is_new just so that the old compute/VM which are still using won\u0027t get exception.","commit_id":"0761ac4d2d4962afd7fbc42903d5cb37a37dde97"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"b36755e67b57563f3c367a571dd0a3bd0b5e5f62","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        \u0027count\u0027: fields.IntegerField(),"},{"line_number":31,"context_line":"        \u0027spec\u0027: fields.ListOfDictOfNullableStringsField(),"},{"line_number":32,"context_line":"        \u0027alias_name\u0027: fields.StringField(nullable\u003dTrue),"},{"line_number":33,"context_line":"        # Note(moshele): is_new is deprecated and should be removed"},{"line_number":34,"context_line":"        # on major version bump"},{"line_number":35,"context_line":"        \u0027is_new\u0027: fields.BooleanField(default\u003dFalse),"},{"line_number":36,"context_line":"        \u0027request_id\u0027: fields.UUIDField(nullable\u003dTrue),"}],"source_content_type":"text/x-python","patch_set":16,"id":"1ac06dbe_cc3cdae4","line":33,"range":{"start_line":33,"start_character":10,"end_line":33,"end_character":14},"updated":"2016-08-22 13:28:07.000000000","message":"This should be NOTE( not Note(, but no reason to block this.","commit_id":"3ea6f089bfd68c22033220981b90c0db1ea6c03a"}],"nova/tests/unit/objects/test_instance_pci_requests.py":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"24dd6f8e120bf3868b525c07d2e8a2fefb2237cc","unresolved":false,"context_lines":[{"line_number":96,"context_line":"                                                 request_id\u003dFAKE_UUID)])"},{"line_number":97,"context_line":"        primitive \u003d requests.obj_to_primitive(target_version\u003d\u00271.0\u0027)"},{"line_number":98,"context_line":"        backported \u003d objects.InstancePCIRequests.obj_from_primitive("},{"line_number":99,"context_line":"            primitive)"},{"line_number":100,"context_line":"        self.assertEqual(\u00271.0\u0027, backported.VERSION)"},{"line_number":101,"context_line":"        self.assertEqual(2, len(backported.requests))"},{"line_number":102,"context_line":"        self.assertFalse(backported.requests[0].obj_attr_is_set(\u0027request_id\u0027))"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_5d93e2a2","line":99,"updated":"2016-04-29 13:47:59.000000000","message":"You will need to add a test_backport_1_1() unit test here to verify that the is_new attribute is present in primitives for the object for versions 1.1 but not for 1.2.","commit_id":"9467526045cfccbe3c4247f50538c541c00fd61b"}]}
