)]}'
{"doc/source/reference/block-device-structs.rst":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":2,"context_line":"Driver BDM Data Structures"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"In addition to the :doc:`API BDM data format \u003c../user/block-device-mapping\u003e`"},{"line_number":6,"context_line":"there are also several internal data structures within Nova that map out how"},{"line_number":7,"context_line":"block devices are attached to instances. This document aims to outline the two"},{"line_number":8,"context_line":"general data structures and two additional specific data structures used by the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"acfaa22e_1e822a32","line":5,"range":{"start_line":5,"start_character":46,"end_line":5,"end_character":48},"updated":"2021-01-21 14:43:43.000000000","message":"nit: you could drop this - an absolute URL would probably be easier find?","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"d21c83ceceab271f0230e821c0d4645974af7023","unresolved":true,"context_lines":[{"line_number":2,"context_line":"Driver BDM Data Structures"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"In addition to the :doc:`API BDM data format \u003c../user/block-device-mapping\u003e`"},{"line_number":6,"context_line":"there are also several internal data structures within Nova that map out how"},{"line_number":7,"context_line":"block devices are attached to instances. This document aims to outline the two"},{"line_number":8,"context_line":"general data structures and two additional specific data structures used by the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"f9e390bc_159e78a3","line":5,"range":{"start_line":5,"start_character":46,"end_line":5,"end_character":48},"in_reply_to":"acfaa22e_1e822a32","updated":"2021-01-21 20:11:42.000000000","message":"I\u0027m not sure if that\u0027s better? Why wouldn\u0027t these always render to the correct doc?","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":8,"context_line":"general data structures and two additional specific data structures used by the"},{"line_number":9,"context_line":"libvirt virt driver."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":".. note:: This document is based on an email to the openstack-dev mailing"},{"line_number":12,"context_line":"   list by Matthew Booth below provided as a primer for developers working on"},{"line_number":13,"context_line":"   virt drivers and interacting with these data structures."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"d8998aba_7bedc1d5","line":11,"range":{"start_line":11,"start_character":0,"end_line":11,"end_character":10},"updated":"2021-01-21 14:43:43.000000000","message":"nit: While Sphinx technically allows this, the text here is being rendered as arguments to the directive, rather than the content of the directive. Something like the below would be better semantically:\n\n  .. note::\n\n      This document ...\n\nWe use both types extensively though so this is a nice-to-have from me","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"d21c83ceceab271f0230e821c0d4645974af7023","unresolved":false,"context_lines":[{"line_number":8,"context_line":"general data structures and two additional specific data structures used by the"},{"line_number":9,"context_line":"libvirt virt driver."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":".. note:: This document is based on an email to the openstack-dev mailing"},{"line_number":12,"context_line":"   list by Matthew Booth below provided as a primer for developers working on"},{"line_number":13,"context_line":"   virt drivers and interacting with these data structures."},{"line_number":14,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"76978c4e_570f0793","line":11,"range":{"start_line":11,"start_character":0,"end_line":11,"end_character":10},"in_reply_to":"d8998aba_7bedc1d5","updated":"2021-01-21 20:11:42.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"   http://lists.openstack.org/pipermail/openstack-dev/2016-June/097529.html"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":".. note:: References to local disks in the following document refere to any"},{"line_number":18,"context_line":"   disk directly managed by nova compute. If nova is configured to use Rbd or"},{"line_number":19,"context_line":"   NFS for instance disks these disks won\u0027t actually be local, but they are"},{"line_number":20,"context_line":"   still managed locally and referred to as local disks."}],"source_content_type":"text/x-rst","patch_set":1,"id":"fa935720_f792427a","line":17,"range":{"start_line":17,"start_character":62,"end_line":17,"end_character":68},"updated":"2021-01-21 14:43:43.000000000","message":"refer","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":14,"context_line":""},{"line_number":15,"context_line":"   http://lists.openstack.org/pipermail/openstack-dev/2016-June/097529.html"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":".. note:: References to local disks in the following document refere to any"},{"line_number":18,"context_line":"   disk directly managed by nova compute. If nova is configured to use Rbd or"},{"line_number":19,"context_line":"   NFS for instance disks these disks won\u0027t actually be local, but they are"},{"line_number":20,"context_line":"   still managed locally and referred to as local disks."}],"source_content_type":"text/x-rst","patch_set":1,"id":"df5e99ad_f1c5853b","line":17,"range":{"start_line":17,"start_character":62,"end_line":17,"end_character":68},"in_reply_to":"fa935720_f792427a","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":15,"context_line":"   http://lists.openstack.org/pipermail/openstack-dev/2016-June/097529.html"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":".. note:: References to local disks in the following document refere to any"},{"line_number":18,"context_line":"   disk directly managed by nova compute. If nova is configured to use Rbd or"},{"line_number":19,"context_line":"   NFS for instance disks these disks won\u0027t actually be local, but they are"},{"line_number":20,"context_line":"   still managed locally and referred to as local disks."},{"line_number":21,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"68654977_0b8c5646","line":18,"range":{"start_line":18,"start_character":71,"end_line":18,"end_character":74},"updated":"2021-01-21 14:43:43.000000000","message":"RBD ?","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":15,"context_line":"   http://lists.openstack.org/pipermail/openstack-dev/2016-June/097529.html"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":".. note:: References to local disks in the following document refere to any"},{"line_number":18,"context_line":"   disk directly managed by nova compute. If nova is configured to use Rbd or"},{"line_number":19,"context_line":"   NFS for instance disks these disks won\u0027t actually be local, but they are"},{"line_number":20,"context_line":"   still managed locally and referred to as local disks."},{"line_number":21,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"62156db5_7217eae7","line":18,"range":{"start_line":18,"start_character":71,"end_line":18,"end_character":74},"in_reply_to":"68654977_0b8c5646","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":".. note:: References to local disks in the following document refere to any"},{"line_number":18,"context_line":"   disk directly managed by nova compute. If nova is configured to use Rbd or"},{"line_number":19,"context_line":"   NFS for instance disks these disks won\u0027t actually be local, but they are"},{"line_number":20,"context_line":"   still managed locally and referred to as local disks."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Generic BDM data structures"}],"source_content_type":"text/x-rst","patch_set":1,"id":"80330f99_7fb2620a","line":19,"range":{"start_line":19,"start_character":25,"end_line":19,"end_character":26},"updated":"2021-01-21 14:43:43.000000000","message":"then","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":".. note:: References to local disks in the following document refere to any"},{"line_number":18,"context_line":"   disk directly managed by nova compute. If nova is configured to use Rbd or"},{"line_number":19,"context_line":"   NFS for instance disks these disks won\u0027t actually be local, but they are"},{"line_number":20,"context_line":"   still managed locally and referred to as local disks."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Generic BDM data structures"}],"source_content_type":"text/x-rst","patch_set":1,"id":"edbb5bf6_a01c9999","line":19,"range":{"start_line":19,"start_character":25,"end_line":19,"end_character":26},"in_reply_to":"80330f99_7fb2620a","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":17,"context_line":".. note:: References to local disks in the following document refere to any"},{"line_number":18,"context_line":"   disk directly managed by nova compute. If nova is configured to use Rbd or"},{"line_number":19,"context_line":"   NFS for instance disks these disks won\u0027t actually be local, but they are"},{"line_number":20,"context_line":"   still managed locally and referred to as local disks."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Generic BDM data structures"},{"line_number":23,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"0a228aad_8c24f026","line":20,"range":{"start_line":20,"start_character":55,"end_line":20,"end_character":56},"updated":"2021-01-21 14:43:43.000000000","message":"Would a contrasting example of a non-local disk be useful","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":17,"context_line":".. note:: References to local disks in the following document refere to any"},{"line_number":18,"context_line":"   disk directly managed by nova compute. If nova is configured to use Rbd or"},{"line_number":19,"context_line":"   NFS for instance disks these disks won\u0027t actually be local, but they are"},{"line_number":20,"context_line":"   still managed locally and referred to as local disks."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Generic BDM data structures"},{"line_number":23,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3dc643b4_c25a9b7f","line":20,"range":{"start_line":20,"start_character":55,"end_line":20,"end_character":56},"in_reply_to":"0a228aad_8c24f026","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":25,"context_line":"``BlockDeviceMapping``"},{"line_number":26,"context_line":"----------------------"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"The \u0027top level\u0027 data structure is the BlockDeviceMapping (BDM) object. It is a"},{"line_number":29,"context_line":"NovaObject, persisted in the db. Current code creates a BDM object for every"},{"line_number":30,"context_line":"disk associated with an instance, whether it is a volume or not."},{"line_number":31,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"4310838e_45049cc9","line":28,"range":{"start_line":28,"start_character":38,"end_line":28,"end_character":56},"updated":"2021-01-21 14:43:43.000000000","message":"nit: ``BlockDeviceMapping``","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":25,"context_line":"``BlockDeviceMapping``"},{"line_number":26,"context_line":"----------------------"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"The \u0027top level\u0027 data structure is the BlockDeviceMapping (BDM) object. It is a"},{"line_number":29,"context_line":"NovaObject, persisted in the db. Current code creates a BDM object for every"},{"line_number":30,"context_line":"disk associated with an instance, whether it is a volume or not."},{"line_number":31,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"95a6baf0_dbc8d218","line":28,"range":{"start_line":28,"start_character":38,"end_line":28,"end_character":56},"in_reply_to":"4310838e_45049cc9","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":26,"context_line":"----------------------"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"The \u0027top level\u0027 data structure is the BlockDeviceMapping (BDM) object. It is a"},{"line_number":29,"context_line":"NovaObject, persisted in the db. Current code creates a BDM object for every"},{"line_number":30,"context_line":"disk associated with an instance, whether it is a volume or not."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"The BDM object describes properties of each disk as specified by the user. It"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5cb2c6c5_0985cfcc","line":29,"range":{"start_line":29,"start_character":29,"end_line":29,"end_character":31},"updated":"2021-01-21 14:43:43.000000000","message":"nit: DB","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":26,"context_line":"----------------------"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"The \u0027top level\u0027 data structure is the BlockDeviceMapping (BDM) object. It is a"},{"line_number":29,"context_line":"NovaObject, persisted in the db. Current code creates a BDM object for every"},{"line_number":30,"context_line":"disk associated with an instance, whether it is a volume or not."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"The BDM object describes properties of each disk as specified by the user. It"}],"source_content_type":"text/x-rst","patch_set":1,"id":"a2d5d8fc_aba74db9","line":29,"range":{"start_line":29,"start_character":0,"end_line":29,"end_character":10},"updated":"2021-01-21 14:43:43.000000000","message":"nit: ``NovaObject``","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":26,"context_line":"----------------------"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"The \u0027top level\u0027 data structure is the BlockDeviceMapping (BDM) object. It is a"},{"line_number":29,"context_line":"NovaObject, persisted in the db. Current code creates a BDM object for every"},{"line_number":30,"context_line":"disk associated with an instance, whether it is a volume or not."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"The BDM object describes properties of each disk as specified by the user. It"}],"source_content_type":"text/x-rst","patch_set":1,"id":"e319bf37_bb2d8335","line":29,"range":{"start_line":29,"start_character":29,"end_line":29,"end_character":31},"in_reply_to":"5cb2c6c5_0985cfcc","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":26,"context_line":"----------------------"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"The \u0027top level\u0027 data structure is the BlockDeviceMapping (BDM) object. It is a"},{"line_number":29,"context_line":"NovaObject, persisted in the db. Current code creates a BDM object for every"},{"line_number":30,"context_line":"disk associated with an instance, whether it is a volume or not."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"The BDM object describes properties of each disk as specified by the user. It"}],"source_content_type":"text/x-rst","patch_set":1,"id":"f0ab0e20_8fcbb0c6","line":29,"range":{"start_line":29,"start_character":0,"end_line":29,"end_character":10},"in_reply_to":"a2d5d8fc_aba74db9","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":35,"context_line":"\u003c../user/block-device-mapping\u003e` document."},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"The Compute API transforms and consolidates all BDMs to ensure that all disks,"},{"line_number":38,"context_line":"explicit or implicit, have a BDM, then persists them. Look in"},{"line_number":39,"context_line":"``nova.objects.block_device`` for all BDM fields, but in essence they contain"},{"line_number":40,"context_line":"information like (source_type\u003d\u0027image\u0027, destination_type\u003d\u0027local\u0027,"},{"line_number":41,"context_line":"image_id\u003d\u0027\u003cimage uuid\u0027\u003e), or equivalents describing ephemeral disks, swap disks"}],"source_content_type":"text/x-rst","patch_set":1,"id":"f3e2d81a_ee53f748","line":38,"range":{"start_line":38,"start_character":34,"end_line":38,"end_character":38},"updated":"2021-01-21 14:43:43.000000000","message":"and then","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":35,"context_line":"\u003c../user/block-device-mapping\u003e` document."},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"The Compute API transforms and consolidates all BDMs to ensure that all disks,"},{"line_number":38,"context_line":"explicit or implicit, have a BDM, then persists them. Look in"},{"line_number":39,"context_line":"``nova.objects.block_device`` for all BDM fields, but in essence they contain"},{"line_number":40,"context_line":"information like (source_type\u003d\u0027image\u0027, destination_type\u003d\u0027local\u0027,"},{"line_number":41,"context_line":"image_id\u003d\u0027\u003cimage uuid\u0027\u003e), or equivalents describing ephemeral disks, swap disks"}],"source_content_type":"text/x-rst","patch_set":1,"id":"f0fe12f3_7d8e80a7","line":38,"range":{"start_line":38,"start_character":34,"end_line":38,"end_character":38},"in_reply_to":"f3e2d81a_ee53f748","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":57,"context_line":"``virt.driver.get_block_device_info()``. Its output is based on data in BDMs."},{"line_number":58,"context_line":"``block_device_info`` is a dict containing:"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":".. code::"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"  {"},{"line_number":63,"context_line":"    \u0027root_device_name\u0027: hypervisor\u0027s notion of the root device\u0027s name"}],"source_content_type":"text/x-rst","patch_set":1,"id":"8229b262_36cca709","line":60,"range":{"start_line":60,"start_character":0,"end_line":60,"end_character":1},"updated":"2021-01-21 14:43:43.000000000","message":"This might make more sense as a definition list\n\n  ``root_device_name``\n     Hypervisor\u0027s ...\n\n(don\u0027t put a blank line between the term and definition)","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":57,"context_line":"``virt.driver.get_block_device_info()``. Its output is based on data in BDMs."},{"line_number":58,"context_line":"``block_device_info`` is a dict containing:"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":".. code::"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"  {"},{"line_number":63,"context_line":"    \u0027root_device_name\u0027: hypervisor\u0027s notion of the root device\u0027s name"}],"source_content_type":"text/x-rst","patch_set":1,"id":"870aef6f_7eacf9b5","line":60,"range":{"start_line":60,"start_character":0,"end_line":60,"end_character":1},"in_reply_to":"8229b262_36cca709","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":66,"context_line":"    \u0027swap\u0027: A swap disk, or None if there is no swap disk"},{"line_number":67,"context_line":"  }"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"The disks are represented in one of 2 ways, which depends on the specific"},{"line_number":70,"context_line":"driver currently in use. There\u0027s the \u0027new\u0027 representation, used by the libvirt"},{"line_number":71,"context_line":"and vmwareAPI drivers, and the \u0027legacy\u0027 representation used by all other"},{"line_number":72,"context_line":"drivers. The legacy representation is a plain dict. It does not contain the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bc041f58_1a0f5e29","line":69,"range":{"start_line":69,"start_character":44,"end_line":69,"end_character":57},"updated":"2021-01-21 14:43:43.000000000","message":"depending","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":66,"context_line":"    \u0027swap\u0027: A swap disk, or None if there is no swap disk"},{"line_number":67,"context_line":"  }"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"The disks are represented in one of 2 ways, which depends on the specific"},{"line_number":70,"context_line":"driver currently in use. There\u0027s the \u0027new\u0027 representation, used by the libvirt"},{"line_number":71,"context_line":"and vmwareAPI drivers, and the \u0027legacy\u0027 representation used by all other"},{"line_number":72,"context_line":"drivers. The legacy representation is a plain dict. It does not contain the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"88c4fd58_35a82d75","line":69,"range":{"start_line":69,"start_character":35,"end_line":69,"end_character":37},"updated":"2021-01-21 14:43:43.000000000","message":"two","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":66,"context_line":"    \u0027swap\u0027: A swap disk, or None if there is no swap disk"},{"line_number":67,"context_line":"  }"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"The disks are represented in one of 2 ways, which depends on the specific"},{"line_number":70,"context_line":"driver currently in use. There\u0027s the \u0027new\u0027 representation, used by the libvirt"},{"line_number":71,"context_line":"and vmwareAPI drivers, and the \u0027legacy\u0027 representation used by all other"},{"line_number":72,"context_line":"drivers. The legacy representation is a plain dict. It does not contain the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"cffa6ed8_ce97cb1e","line":69,"range":{"start_line":69,"start_character":35,"end_line":69,"end_character":37},"in_reply_to":"88c4fd58_35a82d75","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":66,"context_line":"    \u0027swap\u0027: A swap disk, or None if there is no swap disk"},{"line_number":67,"context_line":"  }"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"The disks are represented in one of 2 ways, which depends on the specific"},{"line_number":70,"context_line":"driver currently in use. There\u0027s the \u0027new\u0027 representation, used by the libvirt"},{"line_number":71,"context_line":"and vmwareAPI drivers, and the \u0027legacy\u0027 representation used by all other"},{"line_number":72,"context_line":"drivers. The legacy representation is a plain dict. It does not contain the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"6c4d900d_94b4851f","line":69,"range":{"start_line":69,"start_character":44,"end_line":69,"end_character":57},"in_reply_to":"bc041f58_1a0f5e29","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":83,"context_line":"   dict into a variable called ``block_device_mapping``. This is not a"},{"line_number":84,"context_line":"   ``BlockDeviceMapping`` object, or list of them."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":".. note:: If block_device_info was passed to the driver by compute"},{"line_number":87,"context_line":"   manager, it was probably generated by ``_get_instance_block_device_info()``."},{"line_number":88,"context_line":"   By default, this function filters out all cinder volumes from"},{"line_number":89,"context_line":"   ``block_device_mapping`` which don\u0027t currently have ``connection_info``.  In"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3b226a26_7f8cbd3c","line":86,"range":{"start_line":86,"start_character":13,"end_line":86,"end_character":30},"updated":"2021-01-21 14:43:43.000000000","message":"nit: ``literal``","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":83,"context_line":"   dict into a variable called ``block_device_mapping``. This is not a"},{"line_number":84,"context_line":"   ``BlockDeviceMapping`` object, or list of them."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":".. note:: If block_device_info was passed to the driver by compute"},{"line_number":87,"context_line":"   manager, it was probably generated by ``_get_instance_block_device_info()``."},{"line_number":88,"context_line":"   By default, this function filters out all cinder volumes from"},{"line_number":89,"context_line":"   ``block_device_mapping`` which don\u0027t currently have ``connection_info``.  In"}],"source_content_type":"text/x-rst","patch_set":1,"id":"88458596_f71aa97e","line":86,"range":{"start_line":86,"start_character":13,"end_line":86,"end_character":30},"in_reply_to":"3b226a26_7f8cbd3c","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":102,"context_line":"``instance_disk_info``"},{"line_number":103,"context_line":"----------------------"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"The virt driver API defines a method get_instance_disk_info, which returns a"},{"line_number":106,"context_line":"JSON blob. The compute manager calls this and passes the data over RPC"},{"line_number":107,"context_line":"between calls without ever looking at it. This is driver-specific opaque"},{"line_number":108,"context_line":"data. It is also only used by the libvirt driver, despite being part of the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"dda23f0f_e3e1235d","line":105,"range":{"start_line":105,"start_character":37,"end_line":105,"end_character":59},"updated":"2021-01-21 14:43:43.000000000","message":"nit: ``literal``","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":102,"context_line":"``instance_disk_info``"},{"line_number":103,"context_line":"----------------------"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"The virt driver API defines a method get_instance_disk_info, which returns a"},{"line_number":106,"context_line":"JSON blob. The compute manager calls this and passes the data over RPC"},{"line_number":107,"context_line":"between calls without ever looking at it. This is driver-specific opaque"},{"line_number":108,"context_line":"data. It is also only used by the libvirt driver, despite being part of the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9bf540e9_eb5ca803","line":105,"range":{"start_line":105,"start_character":37,"end_line":105,"end_character":59},"in_reply_to":"dda23f0f_e3e1235d","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":107,"context_line":"between calls without ever looking at it. This is driver-specific opaque"},{"line_number":108,"context_line":"data. It is also only used by the libvirt driver, despite being part of the"},{"line_number":109,"context_line":"API for all drivers. Other drivers do not return any data. The most"},{"line_number":110,"context_line":"interesting aspect of instance_disk_info is that it is generated from the"},{"line_number":111,"context_line":"libvirt XML, not from nova\u0027s state."},{"line_number":112,"context_line":""},{"line_number":113,"context_line":".. note:: ``instance_disk_info`` is often named ``disk_info`` in code, which"}],"source_content_type":"text/x-rst","patch_set":1,"id":"4a705947_4c3a8e74","line":110,"range":{"start_line":110,"start_character":22,"end_line":110,"end_character":40},"updated":"2021-01-21 14:43:43.000000000","message":"nit: ``literal``","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":107,"context_line":"between calls without ever looking at it. This is driver-specific opaque"},{"line_number":108,"context_line":"data. It is also only used by the libvirt driver, despite being part of the"},{"line_number":109,"context_line":"API for all drivers. Other drivers do not return any data. The most"},{"line_number":110,"context_line":"interesting aspect of instance_disk_info is that it is generated from the"},{"line_number":111,"context_line":"libvirt XML, not from nova\u0027s state."},{"line_number":112,"context_line":""},{"line_number":113,"context_line":".. note:: ``instance_disk_info`` is often named ``disk_info`` in code, which"}],"source_content_type":"text/x-rst","patch_set":1,"id":"21768299_c8b8b1fd","line":110,"range":{"start_line":110,"start_character":22,"end_line":110,"end_character":40},"in_reply_to":"4a705947_4c3a8e74","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":114,"context_line":"   is unfortunate as this clashes with the normal naming of the next"},{"line_number":115,"context_line":"   structure. Occasionally the two are used in the same block of code."},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"``instance_disk_info`` is a list of dicts for some of an instance\u0027s disks."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":".. note:: rbd disks (including non-volume disks) and cinder volumes"},{"line_number":120,"context_line":"   are not included in instance_disk_info."}],"source_content_type":"text/x-rst","patch_set":1,"id":"d6562239_dbc912a3","line":117,"updated":"2021-01-21 14:43:43.000000000","message":"As above, definition list?","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":114,"context_line":"   is unfortunate as this clashes with the normal naming of the next"},{"line_number":115,"context_line":"   structure. Occasionally the two are used in the same block of code."},{"line_number":116,"context_line":""},{"line_number":117,"context_line":"``instance_disk_info`` is a list of dicts for some of an instance\u0027s disks."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":".. note:: rbd disks (including non-volume disks) and cinder volumes"},{"line_number":120,"context_line":"   are not included in instance_disk_info."}],"source_content_type":"text/x-rst","patch_set":1,"id":"57307f15_ec37b1d6","line":117,"in_reply_to":"d6562239_dbc912a3","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":147,"context_line":"  {"},{"line_number":148,"context_line":"    \u0027disk_bus\u0027: the default bus used by disks"},{"line_number":149,"context_line":"    \u0027cdrom_bus\u0027: the default bus used by cdrom drives"},{"line_number":150,"context_line":"    \u0027mapping\u0027: defined below"},{"line_number":151,"context_line":"  }"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"``mapping`` is a dict which maps disk names to a dict describing how that disk"}],"source_content_type":"text/x-rst","patch_set":1,"id":"2c3574de_abe5a85e","line":150,"updated":"2021-01-21 14:43:43.000000000","message":"Definition list?","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":147,"context_line":"  {"},{"line_number":148,"context_line":"    \u0027disk_bus\u0027: the default bus used by disks"},{"line_number":149,"context_line":"    \u0027cdrom_bus\u0027: the default bus used by cdrom drives"},{"line_number":150,"context_line":"    \u0027mapping\u0027: defined below"},{"line_number":151,"context_line":"  }"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"``mapping`` is a dict which maps disk names to a dict describing how that disk"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5aba18ba_4b0604d8","line":150,"in_reply_to":"2c3574de_abe5a85e","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":169,"context_line":"buses will be named differently, approximately according to legacy Linux"},{"line_number":170,"context_line":"device naming."},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"Additionally, disk_info will contain a mapping for \u0027root\u0027, which is the"},{"line_number":173,"context_line":"root disk. This will duplicate one of the other entries, either \u0027disk\u0027 or a"},{"line_number":174,"context_line":"volume mapping."},{"line_number":175,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"f5e17a20_a1701a94","line":172,"range":{"start_line":172,"start_character":14,"end_line":172,"end_character":23},"updated":"2021-01-21 14:43:43.000000000","message":"nit: ``literal``","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":169,"context_line":"buses will be named differently, approximately according to legacy Linux"},{"line_number":170,"context_line":"device naming."},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"Additionally, disk_info will contain a mapping for \u0027root\u0027, which is the"},{"line_number":173,"context_line":"root disk. This will duplicate one of the other entries, either \u0027disk\u0027 or a"},{"line_number":174,"context_line":"volume mapping."},{"line_number":175,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"a216e247_ef6f8ed5","line":172,"range":{"start_line":172,"start_character":14,"end_line":172,"end_character":23},"in_reply_to":"f5e17a20_a1701a94","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"37609864c7ab876029268d774d8c2fe7fe452a05","unresolved":true,"context_lines":[{"line_number":184,"context_line":"    \u0027type\u0027: type of device eg \u0027disk\u0027, \u0027cdrom\u0027, \u0027floppy\u0027"},{"line_number":185,"context_line":"    \u0027format\u0027: Which format to apply to the device if applicable"},{"line_number":186,"context_line":"    \u0027boot_index\u0027: Number designating the boot order of the device"},{"line_number":187,"context_line":"  }"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":".. note:: ``BlockDeviceMapping`` and ``DriverBlockDevice`` store boot index"},{"line_number":190,"context_line":"   zero-based. However, libvirt\u0027s boot index is 1-based, so the value stored"}],"source_content_type":"text/x-rst","patch_set":1,"id":"11110940_f766a3c9","line":187,"updated":"2021-01-21 14:43:43.000000000","message":"definition list?","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"09f0407a3516308d88c4ac30a438d909e350a936","unresolved":false,"context_lines":[{"line_number":184,"context_line":"    \u0027type\u0027: type of device eg \u0027disk\u0027, \u0027cdrom\u0027, \u0027floppy\u0027"},{"line_number":185,"context_line":"    \u0027format\u0027: Which format to apply to the device if applicable"},{"line_number":186,"context_line":"    \u0027boot_index\u0027: Number designating the boot order of the device"},{"line_number":187,"context_line":"  }"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":".. note:: ``BlockDeviceMapping`` and ``DriverBlockDevice`` store boot index"},{"line_number":190,"context_line":"   zero-based. However, libvirt\u0027s boot index is 1-based, so the value stored"}],"source_content_type":"text/x-rst","patch_set":1,"id":"25e5d119_fdc050fe","line":187,"in_reply_to":"11110940_f766a3c9","updated":"2021-01-21 20:08:21.000000000","message":"Done","commit_id":"b8fa57b5b244d43eeb9391f12b47faf30f4a3230"}]}
