)]}'
{"cinder/volume/driver.py":[{"author":{"_account_id":1207,"name":"Duncan Thomas","email":"duncan.thomas@gmail.com","username":"duncan-thomas"},"change_message_id":"8cada4a59928a7a87ae0209d5fa8754d2db6387f","unresolved":false,"context_lines":[{"line_number":139,"context_line":"        self._copy_volume(\u0027/dev/zero\u0027, self.local_path(volume), size_in_g)"},{"line_number":140,"context_line":"        dev_path \u003d self.local_path(volume)"},{"line_number":141,"context_line":"        if os.path.exists(dev_path):"},{"line_number":142,"context_line":"            self._try_execute(\u0027dmsetup\u0027, \u0027remove\u0027, dev_path, run_as_root\u003dTrue)"},{"line_number":143,"context_line":"        self._try_execute(\u0027lvremove\u0027, \u0027-f\u0027, \"%s/%s\" %"},{"line_number":144,"context_line":"                          (FLAGS.volume_group,"},{"line_number":145,"context_line":"                           self._escape_snapshot(volume[\u0027name\u0027])),"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAALH%2F%2FexA%3D","line":142,"updated":"2012-09-07 11:01:27.000000000","message":"This will fail if anything has a file handle on this device - blockid spawned by udev rules for example... If we make the dd backgrounded then it will cause the same problem...","commit_id":"2267a55744002f5ddb9c7bf9672e86fad8037798"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"52e5825ad19e9674ebd1260a8c61422c01441c3b","unresolved":false,"context_lines":[{"line_number":147,"context_line":"        \"\"\"Deletes a logical volume.\"\"\""},{"line_number":148,"context_line":"        # zero out old volumes to prevent data leaking between users"},{"line_number":149,"context_line":"        # TODO(ja): reclaiming space should be done lazy and low priority"},{"line_number":150,"context_line":"        self._copy_volume(\u0027/dev/zero\u0027, self.local_path(volume), size_in_g)"},{"line_number":151,"context_line":"        dev_path \u003d self.local_path(volume)"},{"line_number":152,"context_line":"        if os.path.exists(dev_path):"},{"line_number":153,"context_line":"            self._try_execute(\u0027dmsetup\u0027, \u0027remove\u0027, \u0027-f\u0027, dev_path,"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAALH%2F%2FaRw%3D","line":150,"updated":"2012-09-13 04:01:49.000000000","message":"I realize this is not ideal, but it seems to be an acceptable work around for now.  The only other option I would consider is if we were to check the response for the error and then perform the dmsetup remove only if we encounter the bug/error condition.\n\nShould also probably include a Note to describe this a bit so we can be prepared to deal with aftermath later if it comes up.","commit_id":"1de6b5faecead986b966ba36ec2c3377d9069f70"}],"etc/cinder/rootwrap.d/volume.filters":[{"author":{"_account_id":360,"name":"Dan Prince","email":"dprince@redhat.com","username":"dan-prince"},"change_message_id":"44e05cb1a681035c6b0e92737cebabda4dbf06bb","unresolved":false,"context_lines":[{"line_number":32,"context_line":"chown: CommandFilter, /bin/chown, root"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"# cinder/volume/driver.py"},{"line_number":35,"context_line":"dmsetup: CommandFilter, /sbin/dmsetup, root"}],"source_content_type":"application/octet-stream","patch_set":3,"id":"AAAALH%2F%2FaVI%3D","line":35,"updated":"2012-09-13 02:31:36.000000000","message":"On Fedora its actually /usr/sbin/dmsetup. Please add the corresponding dmsetup_usr line.","commit_id":"1de6b5faecead986b966ba36ec2c3377d9069f70"}]}
