)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"6b43c7e4daf34d013691f6f6b116380b13dec1d4","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     sunjiazz \u003csunjia@inspur.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-02-09 14:14:32 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Snapshot the volume-backed instance without min_disk in image metadate."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"You can use the following steps to reproduce："},{"line_number":10,"context_line":"1.Specifically,create first instance using a image with create"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3fa0c359_658ba76d","line":7,"range":{"start_line":7,"start_character":69,"end_line":7,"end_character":71},"updated":"2018-02-09 14:02:19.000000000","message":"nit - typo and a full stop/period isn\u0027t required in the subject.","commit_id":"357b5816d657afd733b52e386bee92695507a04d"},{"author":{"_account_id":26490,"name":"Jason SUN","email":"sunjia@inspur.com","username":"sunjia"},"change_message_id":"b2ffbb73382583624a4a2dedbbd6590969f7b406","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     sunjiazz \u003csunjia@inspur.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-02-09 14:14:32 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Snapshot the volume-backed instance without min_disk in image metadate."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"You can use the following steps to reproduce："},{"line_number":10,"context_line":"1.Specifically,create first instance using a image with create"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3fa0c359_5032d511","line":7,"range":{"start_line":7,"start_character":69,"end_line":7,"end_character":71},"in_reply_to":"3fa0c359_658ba76d","updated":"2018-02-11 01:09:37.000000000","message":"Done","commit_id":"357b5816d657afd733b52e386bee92695507a04d"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"6b43c7e4daf34d013691f6f6b116380b13dec1d4","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Snapshot the volume-backed instance without min_disk in image metadate."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"You can use the following steps to reproduce："},{"line_number":10,"context_line":"1.Specifically,create first instance using a image with create"},{"line_number":11,"context_line":" new volume(new volume size is smaller than the favor\u0027s root disk size)."},{"line_number":12,"context_line":"2.create a snapshot of the first instance."},{"line_number":13,"context_line":"3.failed to create a second instance using the first instance snapshot."},{"line_number":14,"context_line":"Error info is as follows："},{"line_number":15,"context_line":"Volume is smaller than minimum size specified in image metadata."},{"line_number":16,"context_line":"Volume size is XXX bytes,minimum size is XXX bytes.(HTTP 400)"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"No matter what type of flavor will have this error,"},{"line_number":19,"context_line":"so snapshot the volume-backed instance without min_disk in image metadate."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3fa0c359_45eb0b12","line":16,"range":{"start_line":9,"start_character":0,"end_line":16,"end_character":61},"updated":"2018-02-09 14:02:19.000000000","message":"This should live in the bug report and not here.","commit_id":"357b5816d657afd733b52e386bee92695507a04d"},{"author":{"_account_id":26490,"name":"Jason SUN","email":"sunjia@inspur.com","username":"sunjia"},"change_message_id":"b2ffbb73382583624a4a2dedbbd6590969f7b406","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Snapshot the volume-backed instance without min_disk in image metadate."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"You can use the following steps to reproduce："},{"line_number":10,"context_line":"1.Specifically,create first instance using a image with create"},{"line_number":11,"context_line":" new volume(new volume size is smaller than the favor\u0027s root disk size)."},{"line_number":12,"context_line":"2.create a snapshot of the first instance."},{"line_number":13,"context_line":"3.failed to create a second instance using the first instance snapshot."},{"line_number":14,"context_line":"Error info is as follows："},{"line_number":15,"context_line":"Volume is smaller than minimum size specified in image metadata."},{"line_number":16,"context_line":"Volume size is XXX bytes,minimum size is XXX bytes.(HTTP 400)"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"No matter what type of flavor will have this error,"},{"line_number":19,"context_line":"so snapshot the volume-backed instance without min_disk in image metadate."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3fa0c359_1038cdeb","line":16,"range":{"start_line":9,"start_character":0,"end_line":16,"end_character":61},"in_reply_to":"3fa0c359_45eb0b12","updated":"2018-02-11 01:09:37.000000000","message":"Done","commit_id":"357b5816d657afd733b52e386bee92695507a04d"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"6b43c7e4daf34d013691f6f6b116380b13dec1d4","unresolved":false,"context_lines":[{"line_number":16,"context_line":"Volume size is XXX bytes,minimum size is XXX bytes.(HTTP 400)"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"No matter what type of flavor will have this error,"},{"line_number":19,"context_line":"so snapshot the volume-backed instance without min_disk in image metadate."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: Id8f764703c2ad54681aa2efcc68ae741a559fcdd"},{"line_number":22,"context_line":"Closes-bug: #1748348"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3fa0c359_e596d793","line":19,"range":{"start_line":19,"start_character":65,"end_line":19,"end_character":73},"updated":"2018-02-09 14:02:19.000000000","message":"nit - typo","commit_id":"357b5816d657afd733b52e386bee92695507a04d"},{"author":{"_account_id":26490,"name":"Jason SUN","email":"sunjia@inspur.com","username":"sunjia"},"change_message_id":"b2ffbb73382583624a4a2dedbbd6590969f7b406","unresolved":false,"context_lines":[{"line_number":16,"context_line":"Volume size is XXX bytes,minimum size is XXX bytes.(HTTP 400)"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"No matter what type of flavor will have this error,"},{"line_number":19,"context_line":"so snapshot the volume-backed instance without min_disk in image metadate."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Change-Id: Id8f764703c2ad54681aa2efcc68ae741a559fcdd"},{"line_number":22,"context_line":"Closes-bug: #1748348"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3fa0c359_7037d100","line":19,"range":{"start_line":19,"start_character":65,"end_line":19,"end_character":73},"in_reply_to":"3fa0c359_e596d793","updated":"2018-02-11 01:09:37.000000000","message":"Done","commit_id":"357b5816d657afd733b52e386bee92695507a04d"}],"nova/compute/api.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8f309b8b80f08491f16b7afd0a8874d710ab8774","unresolved":false,"context_lines":[{"line_number":2803,"context_line":"        # block device mapping, kernel and ramdisk IDs) with no image data,"},{"line_number":2804,"context_line":"        # hence the zero size"},{"line_number":2805,"context_line":"        image_meta[\u0027size\u0027] \u003d 0"},{"line_number":2806,"context_line":"        for attr in (\u0027container_format\u0027, \u0027disk_format\u0027, \u0027min_disk\u0027):"},{"line_number":2807,"context_line":"            image_meta.pop(attr, None)"},{"line_number":2808,"context_line":"        properties \u003d image_meta[\u0027properties\u0027]"},{"line_number":2809,"context_line":"        # clean properties before filling"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa0c359_ae88dcc5","line":2806,"range":{"start_line":2806,"start_character":57,"end_line":2806,"end_character":65},"updated":"2018-02-19 23:03:41.000000000","message":"I\u0027ve recreated the bug and left notes:\n\nhttps://bugs.launchpad.net/nova/+bug/1748348/comments/2\n\nOne question I have is, why don\u0027t we just set min_disk in the image metadata to be the size of the root volume?","commit_id":"9d55a561b702d0ccf9710fb318478902b673d26f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"15b0f8362f4c7dbcab6710193a93710b02f868a0","unresolved":false,"context_lines":[{"line_number":2803,"context_line":"        # block device mapping, kernel and ramdisk IDs) with no image data,"},{"line_number":2804,"context_line":"        # hence the zero size"},{"line_number":2805,"context_line":"        image_meta[\u0027size\u0027] \u003d 0"},{"line_number":2806,"context_line":"        for attr in (\u0027container_format\u0027, \u0027disk_format\u0027, \u0027min_disk\u0027):"},{"line_number":2807,"context_line":"            image_meta.pop(attr, None)"},{"line_number":2808,"context_line":"        properties \u003d image_meta[\u0027properties\u0027]"},{"line_number":2809,"context_line":"        # clean properties before filling"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa0c359_27681cf3","line":2806,"range":{"start_line":2806,"start_character":57,"end_line":2806,"end_character":65},"in_reply_to":"3fa0c359_386a8019","updated":"2018-02-22 20:58:01.000000000","message":"After discussing this with dasmith and rosmaita (glance PTL), we should be using the root bdm volume size for the min_disk when doing a volume-backed snapshot:\n\n(2:39:46 PM) mriedem: rosmaita: https://docs.openstack.org/python-openstackclient/pike/cli/command-objects/image.html says that image --size is v1 only, but it\u0027s in the v2 api docs https://developer.openstack.org/api-ref/image/v2/index.html#show-image-details\n(2:39:51 PM) mriedem: so is size not a v1 thing only?\n(2:40:00 PM) mriedem: or are the v2 docs wrong?\n(2:41:20 PM) dansmith: mriedem: rosmaita: and while we\u0027re on it, maybe a human explanation of min_disk and size would be worthwhile\n(2:41:37 PM) mriedem: what the, how did you know i was here\n(2:42:09 PM) dansmith: wild guess\n(2:42:12 PM) mriedem: rosmaita: for context, we\u0027re trying to figure out what to put, if anything, for min_disk in snapshots https://review.openstack.org/#/c/542646/\n(2:42:26 PM) mriedem: ephemeral vs volume-backed\n(2:42:33 PM) mriedem: if that spices up the pot\n(2:50:23 PM) rosmaita: mriedem: dansmith: well, size is supposed to be the actual size in bytes of the image payload, which could be compressed and not an actual reflection of how much stuff the thing requires\n(2:50:41 PM) dansmith: rosmaita: right, okay that is exactly what I thought :)\n(2:50:54 PM) rosmaita: min_disk is supposed to give an idea in GB of what you expect the actual image to take up\n(2:50:59 PM) rosmaita: it\u0027s not really used by glance\n(2:51:01 PM) dansmith: rosmaita: min_disk would be the minimum size container (i.e. partition, disk image, etc) that you can unpack it into yeah?\n(2:51:08 PM) rosmaita: it\u0027s there for nova\n(2:51:12 PM) rosmaita: dansmith : exactly\n(2:51:17 PM) dansmith: right, because glance wouldn\u0027t care\n(2:51:19 PM) dansmith: mriedem: ^\n(2:51:39 PM) rosmaita: same with min_ram, it\u0027s a convenience thing\n(2:52:07 PM) rosmaita: just saying that you should have at least this much ram or you can expect non-optimal performance\n(2:52:12 PM) dansmith: aye, makes sense, thanks\n(2:52:16 PM) rosmaita: np\n(2:52:24 PM) dansmith: RHEL has a minimum amount of ram required or it will warn you on boot up,\n(2:52:30 PM) dansmith: so min_ram would be good for avoiding that, yeah\n(2:52:50 PM) rosmaita: there\u0027s also a virtual_size field in glance but it is not populated by glance\n(2:53:40 PM) rosmaita: i mean, it\u0027s a base image property, don\u0027t know if it is actually used much\n(2:54:09 PM) rosmaita: no way for glance to get that info without cracking the image open, which we have been reluctant to do\n(2:54:21 PM) mriedem: dansmith: yeah ok so min_disk \u003d\u003d flavor.root_gb is ok for ephemeral disk instances (not volume-backed)\n(2:54:41 PM) mriedem: for volume-backed instances, min_disk \u003d\u003d root volume size?\n(2:54:47 PM) dansmith: mriedem: and min_disk\u003d\u003dbdm.size for volumes\n(2:54:48 PM) dansmith: yeah\n(2:54:55 PM) mriedem: ok, that\u0027s what i originally said in the patch...","commit_id":"9d55a561b702d0ccf9710fb318478902b673d26f"},{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"e6ffda0363c518291a8072fa0b217e4c8dc70a79","unresolved":false,"context_lines":[{"line_number":2803,"context_line":"        # block device mapping, kernel and ramdisk IDs) with no image data,"},{"line_number":2804,"context_line":"        # hence the zero size"},{"line_number":2805,"context_line":"        image_meta[\u0027size\u0027] \u003d 0"},{"line_number":2806,"context_line":"        for attr in (\u0027container_format\u0027, \u0027disk_format\u0027, \u0027min_disk\u0027):"},{"line_number":2807,"context_line":"            image_meta.pop(attr, None)"},{"line_number":2808,"context_line":"        properties \u003d image_meta[\u0027properties\u0027]"},{"line_number":2809,"context_line":"        # clean properties before filling"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa0c359_386a8019","line":2806,"range":{"start_line":2806,"start_character":57,"end_line":2806,"end_character":65},"in_reply_to":"3fa0c359_ae88dcc5","updated":"2018-02-22 18:15:50.000000000","message":"To summarise our IRC discussion, I don\u0027t think this is correct. The real question is: why is min_disk set in image_meta in the first place? We shouldn\u0027t have to pop it here because it shouldn\u0027t be there anyway.\n\nmin_disk !\u003d size. Size is how many bits we need to unpack this thing. min_disk is how much space this workload requires to run. e.g. If it\u0027s a database, maybe a lot.\n\nSomething in this code flow is conflating min_disk with size. Attempting to use this image somewhere which isn\u0027t physically big enough will already fail because its size will be too big. We don\u0027t need to set min_disk to the flavor size when creating a snapshot any more than we need to set min_ram to the flavor ram when creating a snapshot.","commit_id":"9d55a561b702d0ccf9710fb318478902b673d26f"}],"nova/tests/unit/compute/test_compute_api.py":[{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"6b43c7e4daf34d013691f6f6b116380b13dec1d4","unresolved":false,"context_lines":[{"line_number":2931,"context_line":"    def _test_snapshot_volume_backed(self, quiesce_required, quiesce_fails,"},{"line_number":2932,"context_line":"                                     vm_state\u003dvm_states.ACTIVE):"},{"line_number":2933,"context_line":"        fake_sys_meta \u003d {\u0027image_min_ram\u0027: \u002711\u0027,"},{"line_number":2934,"context_line":"                         \u0027image_min_disk\u0027: \u002722\u0027,"},{"line_number":2935,"context_line":"                         \u0027image_container_format\u0027: \u0027ami\u0027,"},{"line_number":2936,"context_line":"                         \u0027image_disk_format\u0027: \u0027ami\u0027,"},{"line_number":2937,"context_line":"                         \u0027image_ram_disk\u0027: \u0027fake_ram_disk_id\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa0c359_25735fb3","side":"PARENT","line":2934,"range":{"start_line":2934,"start_character":0,"end_line":2934,"end_character":48},"updated":"2018-02-09 14:02:19.000000000","message":"Doesn\u0027t this defeat the purpose of the test? Leaving this in ensures it\u0027s removed later right?","commit_id":"5caca24dc79e3942b26e00ff1e0b8e7a320a947f"},{"author":{"_account_id":26490,"name":"Jason SUN","email":"sunjia@inspur.com","username":"sunjia"},"change_message_id":"b2ffbb73382583624a4a2dedbbd6590969f7b406","unresolved":false,"context_lines":[{"line_number":2931,"context_line":"    def _test_snapshot_volume_backed(self, quiesce_required, quiesce_fails,"},{"line_number":2932,"context_line":"                                     vm_state\u003dvm_states.ACTIVE):"},{"line_number":2933,"context_line":"        fake_sys_meta \u003d {\u0027image_min_ram\u0027: \u002711\u0027,"},{"line_number":2934,"context_line":"                         \u0027image_min_disk\u0027: \u002722\u0027,"},{"line_number":2935,"context_line":"                         \u0027image_container_format\u0027: \u0027ami\u0027,"},{"line_number":2936,"context_line":"                         \u0027image_disk_format\u0027: \u0027ami\u0027,"},{"line_number":2937,"context_line":"                         \u0027image_ram_disk\u0027: \u0027fake_ram_disk_id\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa0c359_303dc9dc","side":"PARENT","line":2934,"range":{"start_line":2934,"start_character":0,"end_line":2934,"end_character":48},"in_reply_to":"3fa0c359_25735fb3","updated":"2018-02-11 01:09:37.000000000","message":"Done.Thanks for review","commit_id":"5caca24dc79e3942b26e00ff1e0b8e7a320a947f"}]}
