)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"514c7dfdd1cc11536701501d5ebeb11ef5d6afc6","unresolved":false,"context_lines":[{"line_number":17,"context_line":"- Added support for new vmdk format \u0027streamOptimized\u0027."},{"line_number":18,"context_line":"  It is a compact, compressed streamable sparse format that is well-suited as a"},{"line_number":19,"context_line":"  vmdk glance image format.  Just as important, this is the only format that"},{"line_number":20,"context_line":"  HttpNfc supports, so it is the required format for deploying to vSAN"},{"line_number":21,"context_line":"- Basic handling image caching as an imported VM instead of a disk"},{"line_number":22,"context_line":"- Handle instance delete of vsan-based VM differently (through the more"},{"line_number":23,"context_line":"  straightforward Delete_Task)"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAATn%2F%2F2lc%3D","line":20,"updated":"2013-10-27 08:43:42.000000000","message":"do we need an update to the requirements.txt here?","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":8027,"name":"Vui Lam","email":"vui@vmware.com","username":"vui"},"change_message_id":"fdd3483604881999dae66fd456851f442f31d3a2","unresolved":false,"context_lines":[{"line_number":17,"context_line":"- Added support for new vmdk format \u0027streamOptimized\u0027."},{"line_number":18,"context_line":"  It is a compact, compressed streamable sparse format that is well-suited as a"},{"line_number":19,"context_line":"  vmdk glance image format.  Just as important, this is the only format that"},{"line_number":20,"context_line":"  HttpNfc supports, so it is the required format for deploying to vSAN"},{"line_number":21,"context_line":"- Basic handling image caching as an imported VM instead of a disk"},{"line_number":22,"context_line":"- Handle instance delete of vsan-based VM differently (through the more"},{"line_number":23,"context_line":"  straightforward Delete_Task)"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"AAAATn%2F%2FpTc%3D","line":20,"in_reply_to":"AAAATn%2F%2F2lc%3D","updated":"2013-10-30 23:52:50.000000000","message":"if you are referring to nova/requirements.txt, no, there is no additional python dependencies.","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"}],"nova/virt/vmwareapi/driver.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"514c7dfdd1cc11536701501d5ebeb11ef5d6afc6","unresolved":false,"context_lines":[{"line_number":932,"context_line":"    def wait_for_lease_ready(self, lease):"},{"line_number":933,"context_line":"        done \u003d event.Event()"},{"line_number":934,"context_line":"        loop \u003d loopingcall.FixedIntervalLoopingCall(self._poll_lease,"},{"line_number":935,"context_line":"                                                    lease,"},{"line_number":936,"context_line":"                                                    done)"},{"line_number":937,"context_line":"        loop.start(CONF.vmware.task_poll_interval)"},{"line_number":938,"context_line":"        done.wait()"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2F2mU%3D","line":935,"updated":"2013-10-27 08:43:42.000000000","message":"indentation here is a little odd","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":8027,"name":"Vui Lam","email":"vui@vmware.com","username":"vui"},"change_message_id":"fdd3483604881999dae66fd456851f442f31d3a2","unresolved":false,"context_lines":[{"line_number":932,"context_line":"    def wait_for_lease_ready(self, lease):"},{"line_number":933,"context_line":"        done \u003d event.Event()"},{"line_number":934,"context_line":"        loop \u003d loopingcall.FixedIntervalLoopingCall(self._poll_lease,"},{"line_number":935,"context_line":"                                                    lease,"},{"line_number":936,"context_line":"                                                    done)"},{"line_number":937,"context_line":"        loop.start(CONF.vmware.task_poll_interval)"},{"line_number":938,"context_line":"        done.wait()"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FpRo%3D","line":935,"in_reply_to":"AAAATn%2F%2F2mU%3D","updated":"2013-10-30 23:52:50.000000000","message":"hm... these lines indent to \u0027self._...\u0027 in my repo, wonder if it is a gerrit thing.","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"514c7dfdd1cc11536701501d5ebeb11ef5d6afc6","unresolved":false,"context_lines":[{"line_number":943,"context_line":"            state \u003d self._call_method(vim_util, \u0027get_dynamic_property\u0027,"},{"line_number":944,"context_line":"                                      lease, \u0027HttpNfcLease\u0027, \u0027state\u0027)"},{"line_number":945,"context_line":"            if state \u003d\u003d \u0027ready\u0027:"},{"line_number":946,"context_line":"                # done"},{"line_number":947,"context_line":"                LOG.debug(_(\"Lease is ready\"))"},{"line_number":948,"context_line":"                done.send()"},{"line_number":949,"context_line":"                return"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2F2mQ%3D","line":946,"updated":"2013-10-27 08:43:42.000000000","message":"is this comment needed","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":8027,"name":"Vui Lam","email":"vui@vmware.com","username":"vui"},"change_message_id":"fdd3483604881999dae66fd456851f442f31d3a2","unresolved":false,"context_lines":[{"line_number":943,"context_line":"            state \u003d self._call_method(vim_util, \u0027get_dynamic_property\u0027,"},{"line_number":944,"context_line":"                                      lease, \u0027HttpNfcLease\u0027, \u0027state\u0027)"},{"line_number":945,"context_line":"            if state \u003d\u003d \u0027ready\u0027:"},{"line_number":946,"context_line":"                # done"},{"line_number":947,"context_line":"                LOG.debug(_(\"Lease is ready\"))"},{"line_number":948,"context_line":"                done.send()"},{"line_number":949,"context_line":"                return"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FpRk%3D","line":946,"in_reply_to":"AAAATn%2F%2F2mQ%3D","updated":"2013-10-30 23:52:50.000000000","message":"Done","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"514c7dfdd1cc11536701501d5ebeb11ef5d6afc6","unresolved":false,"context_lines":[{"line_number":954,"context_line":"                error_msg \u003d self._call_method(vim_util, \u0027get_dynamic_property\u0027,"},{"line_number":955,"context_line":"                                              lease, \u0027HttpNfcLease\u0027, \u0027error\u0027)"},{"line_number":956,"context_line":"                LOG.exception(error_msg)"},{"line_number":957,"context_line":"                excep \u003d error_util.VimFaultException([], error_msg)"},{"line_number":958,"context_line":"                done.send_exception(excep)"},{"line_number":959,"context_line":"            else:"},{"line_number":960,"context_line":"                # unknown state - complain"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2F2mM%3D","line":957,"updated":"2013-10-27 08:43:42.000000000","message":"why do we raise a Vim exception here and not a Nova exception?","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":8027,"name":"Vui Lam","email":"vui@vmware.com","username":"vui"},"change_message_id":"fdd3483604881999dae66fd456851f442f31d3a2","unresolved":false,"context_lines":[{"line_number":954,"context_line":"                error_msg \u003d self._call_method(vim_util, \u0027get_dynamic_property\u0027,"},{"line_number":955,"context_line":"                                              lease, \u0027HttpNfcLease\u0027, \u0027error\u0027)"},{"line_number":956,"context_line":"                LOG.exception(error_msg)"},{"line_number":957,"context_line":"                excep \u003d error_util.VimFaultException([], error_msg)"},{"line_number":958,"context_line":"                done.send_exception(excep)"},{"line_number":959,"context_line":"            else:"},{"line_number":960,"context_line":"                # unknown state - complain"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FpRg%3D","line":957,"in_reply_to":"AAAATn%2F%2F2mM%3D","updated":"2013-10-30 23:52:50.000000000","message":"Done","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"514c7dfdd1cc11536701501d5ebeb11ef5d6afc6","unresolved":false,"context_lines":[{"line_number":959,"context_line":"            else:"},{"line_number":960,"context_line":"                # unknown state - complain"},{"line_number":961,"context_line":"                error_msg \u003d _(\"Error: unknown lease state\") % state"},{"line_number":962,"context_line":"                raise error_util.VimFaultException([], error_msg)"},{"line_number":963,"context_line":"        except Exception as excep:"},{"line_number":964,"context_line":"            LOG.exception(excep)"},{"line_number":965,"context_line":"            done.send_exception(excep)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2F2mI%3D","line":962,"updated":"2013-10-27 08:43:42.000000000","message":"ditto","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":8027,"name":"Vui Lam","email":"vui@vmware.com","username":"vui"},"change_message_id":"fdd3483604881999dae66fd456851f442f31d3a2","unresolved":false,"context_lines":[{"line_number":959,"context_line":"            else:"},{"line_number":960,"context_line":"                # unknown state - complain"},{"line_number":961,"context_line":"                error_msg \u003d _(\"Error: unknown lease state\") % state"},{"line_number":962,"context_line":"                raise error_util.VimFaultException([], error_msg)"},{"line_number":963,"context_line":"        except Exception as excep:"},{"line_number":964,"context_line":"            LOG.exception(excep)"},{"line_number":965,"context_line":"            done.send_exception(excep)"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FpRc%3D","line":962,"in_reply_to":"AAAATn%2F%2F2mI%3D","updated":"2013-10-30 23:52:50.000000000","message":"Done","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":935,"context_line":"                                                    lease,"},{"line_number":936,"context_line":"                                                    done)"},{"line_number":937,"context_line":"        loop.start(CONF.vmware.task_poll_interval)"},{"line_number":938,"context_line":"        done.wait()"},{"line_number":939,"context_line":"        loop.stop()"},{"line_number":940,"context_line":""},{"line_number":941,"context_line":"    def _poll_lease(self, lease, done):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9J2E%3D","line":938,"updated":"2013-12-16 09:04:30.000000000","message":"please see https://review.openstack.org/#/c/54808/","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"}],"nova/virt/vmwareapi/read_write_util.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"514c7dfdd1cc11536701501d5ebeb11ef5d6afc6","unresolved":false,"context_lines":[{"line_number":271,"context_line":"        if not url:"},{"line_number":272,"context_line":"            msg \u003d \"Could not retrieve URL from lease\""},{"line_number":273,"context_line":"            LOG.exception(msg)"},{"line_number":274,"context_line":"            raise error_util.VimException(msg)"},{"line_number":275,"context_line":"        LOG.info(_(\"Opening vmdk url: %s for write\") % url)"},{"line_number":276,"context_line":""},{"line_number":277,"context_line":"        # Prepare the http connection to the vmdk url"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2F2mA%3D","line":274,"updated":"2013-10-27 08:43:42.000000000","message":"nova exception?","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":277,"context_line":"            msg \u003d _(\"Could not retrieve URL from lease.\")"},{"line_number":278,"context_line":"            LOG.exception(msg)"},{"line_number":279,"context_line":"            raise error_util.VimException(msg)"},{"line_number":280,"context_line":"        LOG.info(_(\"Opening vmdk url: %s for write.\") % url)"},{"line_number":281,"context_line":""},{"line_number":282,"context_line":"        # Prepare the http connection to the vmdk url"},{"line_number":283,"context_line":"        cookies \u003d session.vim.client.options.transport.cookiejar"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9J1g%3D","line":280,"updated":"2013-12-16 09:04:30.000000000","message":"please use a , instead of the %","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":312,"context_line":"        \"\"\""},{"line_number":313,"context_line":"        percent \u003d int(float(self._progress) * 100 / self._vmdk_size)"},{"line_number":314,"context_line":"        try:"},{"line_number":315,"context_line":"            LOG.debug(_(\"Updating progress to %s percent\") % percent)"},{"line_number":316,"context_line":"            self._session._call_method(self._session.vim,"},{"line_number":317,"context_line":"                                       \u0027HttpNfcLeaseProgress\u0027,"},{"line_number":318,"context_line":"                                       self._lease,"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9J1c%3D","line":315,"updated":"2013-12-16 09:04:30.000000000","message":"ditto","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":319,"context_line":"                                       percent\u003dpercent)"},{"line_number":320,"context_line":"        except error_util.VimException as ex:"},{"line_number":321,"context_line":"            LOG.exception(ex)"},{"line_number":322,"context_line":"            raise ex"},{"line_number":323,"context_line":""},{"line_number":324,"context_line":"    def close(self):"},{"line_number":325,"context_line":"        \"\"\"End the lease and close the connection.\"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9JzQ%3D","line":322,"updated":"2013-12-16 09:04:30.000000000","message":"can we just use raise here?","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":372,"context_line":"            msg \u003d _(\"Could not retrieve URL from lease.\")"},{"line_number":373,"context_line":"            LOG.exception(msg)"},{"line_number":374,"context_line":"            raise error_util.VimException(msg)"},{"line_number":375,"context_line":"        LOG.info(_(\"Opening vmdk url: %s for read.\") % url)"},{"line_number":376,"context_line":""},{"line_number":377,"context_line":"        cookies \u003d session.vim.client.options.transport.cookiejar"},{"line_number":378,"context_line":"        headers \u003d {\u0027User-Agent\u0027: USER_AGENT,"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9J1U%3D","line":375,"updated":"2013-12-16 09:04:30.000000000","message":"ditto","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":384,"context_line":"    def read(self, chunk_size):"},{"line_number":385,"context_line":"        \"\"\"Read a chunk from file.\"\"\""},{"line_number":386,"context_line":"        self._progress +\u003d READ_CHUNKSIZE"},{"line_number":387,"context_line":"        LOG.debug(_(\"Read %s bytes from vmdk.\") % self._progress)"},{"line_number":388,"context_line":"        return self.file_handle.read(READ_CHUNKSIZE)"},{"line_number":389,"context_line":""},{"line_number":390,"context_line":"    def update_progress(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9J1M%3D","line":387,"updated":"2013-12-16 09:04:30.000000000","message":"ditto","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":395,"context_line":"        \"\"\""},{"line_number":396,"context_line":"        percent \u003d int(float(self._progress) * 100 / self._maxDataToTransfer)"},{"line_number":397,"context_line":"        try:"},{"line_number":398,"context_line":"            LOG.debug(_(\"Updating progress to %s percent\") % percent)"},{"line_number":399,"context_line":"            self._session._call_method(self._session.vim,"},{"line_number":400,"context_line":"                                       \u0027HttpNfcLeaseProgress\u0027,"},{"line_number":401,"context_line":"                                       self._lease,"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9J1I%3D","line":398,"updated":"2013-12-16 09:04:30.000000000","message":"ditto","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":417,"context_line":"                                       self._lease)"},{"line_number":418,"context_line":"            LOG.debug(_(\"Lease released.\"))"},{"line_number":419,"context_line":"        else:"},{"line_number":420,"context_line":"            LOG.debug(_(\"Lease is already in state: %s\") % state)"},{"line_number":421,"context_line":"        super(VMwareHTTPReadVmdk, self).close()"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9J1E%3D","line":420,"updated":"2013-12-16 09:04:30.000000000","message":"ditto","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"}],"nova/virt/vmwareapi/vmops.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"514c7dfdd1cc11536701501d5ebeb11ef5d6afc6","unresolved":false,"context_lines":[{"line_number":358,"context_line":"            # For sparse disk, upload the -sparse.vmdk file to be copied into"},{"line_number":359,"context_line":"            # a flat vmdk"},{"line_number":360,"context_line":"            if disk_type \u003d\u003d \u0027streamOptimized\u0027:"},{"line_number":361,"context_line":"                iid \u003d instance[\u0027image_ref\u0027]"},{"line_number":362,"context_line":"                dc_ref, dc_name \u003d self._get_datacenter_ref_and_name()"},{"line_number":363,"context_line":""},{"line_number":364,"context_line":"                (image_service, image_id) \u003d glance.get_remote_image_service("}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2F2l4%3D","line":361,"updated":"2013-10-27 08:43:42.000000000","message":"iid was a little confusing. can we use image_ref? or instance_image_ref?","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":8027,"name":"Vui Lam","email":"vui@vmware.com","username":"vui"},"change_message_id":"fdd3483604881999dae66fd456851f442f31d3a2","unresolved":false,"context_lines":[{"line_number":358,"context_line":"            # For sparse disk, upload the -sparse.vmdk file to be copied into"},{"line_number":359,"context_line":"            # a flat vmdk"},{"line_number":360,"context_line":"            if disk_type \u003d\u003d \u0027streamOptimized\u0027:"},{"line_number":361,"context_line":"                iid \u003d instance[\u0027image_ref\u0027]"},{"line_number":362,"context_line":"                dc_ref, dc_name \u003d self._get_datacenter_ref_and_name()"},{"line_number":363,"context_line":""},{"line_number":364,"context_line":"                (image_service, image_id) \u003d glance.get_remote_image_service("}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FpQE%3D","line":361,"in_reply_to":"AAAATn%2F%2F2l4%3D","updated":"2013-10-30 23:52:50.000000000","message":"Done","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"514c7dfdd1cc11536701501d5ebeb11ef5d6afc6","unresolved":false,"context_lines":[{"line_number":664,"context_line":"    def get_allowed_datastore_types(disk_type):"},{"line_number":665,"context_line":"        if disk_type \u003d\u003d \u0027streamOptimized\u0027:"},{"line_number":666,"context_line":"            return vm_util.ALL_SUPPORTED_DS_TYPES"},{"line_number":667,"context_line":"        return [\u0027VMFS\u0027, \u0027NFS\u0027]"},{"line_number":668,"context_line":""},{"line_number":669,"context_line":"    @staticmethod"},{"line_number":670,"context_line":"    def decide_linked_clone(image_linked_clone, global_linked_clone):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2F2ls%3D","line":667,"updated":"2013-10-27 08:43:42.000000000","message":"Maybe this should also be a define","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":8027,"name":"Vui Lam","email":"vui@vmware.com","username":"vui"},"change_message_id":"fdd3483604881999dae66fd456851f442f31d3a2","unresolved":false,"context_lines":[{"line_number":664,"context_line":"    def get_allowed_datastore_types(disk_type):"},{"line_number":665,"context_line":"        if disk_type \u003d\u003d \u0027streamOptimized\u0027:"},{"line_number":666,"context_line":"            return vm_util.ALL_SUPPORTED_DS_TYPES"},{"line_number":667,"context_line":"        return [\u0027VMFS\u0027, \u0027NFS\u0027]"},{"line_number":668,"context_line":""},{"line_number":669,"context_line":"    @staticmethod"},{"line_number":670,"context_line":"    def decide_linked_clone(image_linked_clone, global_linked_clone):"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2FpQQ%3D","line":667,"in_reply_to":"AAAATn%2F%2F2ls%3D","updated":"2013-10-30 23:52:50.000000000","message":"Done","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":362,"context_line":"                                                    instance_image_ref)"},{"line_number":363,"context_line":"                metadata \u003d image_service.show(context, image_id)"},{"line_number":364,"context_line":"                file_size \u003d int(metadata[\u0027size\u0027])"},{"line_number":365,"context_line":"                size_kb \u003d float(metadata[\u0027size\u0027]) / 1024"},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"                # The capacity of sparse glance image is often suspect, let VC"},{"line_number":368,"context_line":"                # figure out the disk capacity by using the \"instantiate from"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9J0g%3D","line":365,"updated":"2013-12-16 09:04:30.000000000","message":"why not use file_size/1024 here?","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":389,"context_line":"                            {\u0027image_ref\u0027: instance[\u0027image_ref\u0027],"},{"line_number":390,"context_line":"                             \u0027data_store_name\u0027: data_store_name},"},{"line_number":391,"context_line":"                          instance\u003dinstance)"},{"line_number":392,"context_line":"                pass"},{"line_number":393,"context_line":"            else:"},{"line_number":394,"context_line":"                upload_vmdk_name \u003d sparse_uploaded_vmdk_name \\"},{"line_number":395,"context_line":"                    if disk_type \u003d\u003d \"sparse\" else flat_uploaded_vmdk_name"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9J0Y%3D","line":392,"updated":"2013-12-16 09:04:30.000000000","message":"can you please explain the pass here?","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":805,"context_line":"            cookies\u003dcookies,"},{"line_number":806,"context_line":"            session\u003dself._session)"},{"line_number":807,"context_line":""},{"line_number":808,"context_line":"        LOG.debug(_(\"Uploaded image %s\") % image_id, instance\u003dinstance)"},{"line_number":809,"context_line":""},{"line_number":810,"context_line":"    def snapshot(self, context, instance, image_id, update_task_state):"},{"line_number":811,"context_line":"        \"\"\"Create snapshot from a running VM instance."}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9J0E%3D","line":808,"updated":"2013-12-16 09:04:30.000000000","message":", instead of %","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":1010,"context_line":"                        LOG.warn(_(\"In vmwareapi:vmops:destroy, \""},{"line_number":1011,"context_line":"                                     \"got this exception while deleting\""},{"line_number":1012,"context_line":"                                     \" config.iso: %s\")"},{"line_number":1013,"context_line":"                                     % str(excep))"},{"line_number":1014,"context_line":"                    self._destroy_vm(instance, vm_ref)"},{"line_number":1015,"context_line":"                    return"},{"line_number":1016,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9Jzk%3D","line":1013,"updated":"2013-12-16 09:04:30.000000000","message":"ditto","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"}],"nova/virt/vmwareapi/volumeops.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"514c7dfdd1cc11536701501d5ebeb11ef5d6afc6","unresolved":false,"context_lines":[{"line_number":66,"context_line":"        controller_spec.operation \u003d \u0027add\u0027"},{"line_number":67,"context_line":"        controller_spec.device \u003d controller_device"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        disk_device \u003d cf.create(\u0027ns0:VirtualDisk\u0027)"},{"line_number":70,"context_line":"        disk_device.capacityInKB \u003d int(size_kb)"},{"line_number":71,"context_line":"        # for very small disks allocate at least 1KB"},{"line_number":72,"context_line":"        if int(size_kb) \u003d\u003d 0:"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAATn%2F%2F2lo%3D","line":69,"updated":"2013-10-27 08:43:42.000000000","message":"consider  disk_device.capacityInKB  \u003d max(1, int(size_kb)) instead of lines 70 - 73","commit_id":"d7e25748ecf60d58738b29c821100c727be964c4"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"f839c7c27168f83fc5a41c9bb275658462868df7","unresolved":false,"context_lines":[{"line_number":96,"context_line":"        create_spec.deviceChange \u003d [controller_spec, disk_spec]"},{"line_number":97,"context_line":"        create_spec.files \u003d vm_file_info"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"        LOG.debug(_(\"Spec for creating the backing: %s.\") % create_spec)"},{"line_number":100,"context_line":"        return create_spec"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"    def attach_disk_to_vm(self, vm_ref, instance,"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAATn%2F9JzY%3D","line":99,"updated":"2013-12-16 09:04:30.000000000","message":", instead of %","commit_id":"c46d0679b42569aaff17b407985559cd54b4eae3"}]}
