)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"41c31e2deca24454e95316e7fc0c513be2042833","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"In python3 self.get_fsid() is represented as binary."},{"line_number":10,"context_line":"This patch is fixing this."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Icbb0b341be19f87bd23064a2b4f98e68bf492a25"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9fdfeff1_bc6fda90","line":11,"updated":"2019-02-06 22:38:02.000000000","message":"Does a bug manifest because of this?","commit_id":"d22fe07e27861f01fdf71d4964b1aae4ea8af5cd"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"63054898c730eda6f1d2e59c795cf26ccd541573","unresolved":false,"context_lines":[{"line_number":11,"context_line":"return value, which should be string, not bytes."},{"line_number":12,"context_line":"Same fix is in cinder ang glance_store until librados will"},{"line_number":13,"context_line":"be fixed."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Change-Id: Icbb0b341be19f87bd23064a2b4f98e68bf492a25"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"9fb8cfa7_9e3192a5","line":14,"updated":"2019-06-06 12:06:09.000000000","message":"Closes-Bug: #1816468","commit_id":"b2545d02ba7dc361b3bb9e2957ce776696c1d56a"}],"nova/virt/libvirt/imagebackend.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"69d87accb859290b3287f7c075a693a2d300821e","unresolved":false,"context_lines":[{"line_number":1053,"context_line":"                        image_id, base_image_id):"},{"line_number":1054,"context_line":"        \"\"\"Creates an RBD snapshot directly."},{"line_number":1055,"context_line":"        \"\"\""},{"line_number":1056,"context_line":"        # Librados\u0027s get_fsid is represented as binary"},{"line_number":1057,"context_line":"        # in py3 instead of str as it is in py2."},{"line_number":1058,"context_line":"        # This causes problems with nova rbd"},{"line_number":1059,"context_line":"        # driver as we rely on get_fsid return value"},{"line_number":1060,"context_line":"        # which should be string, not bytes."},{"line_number":1061,"context_line":"        # Decode binary to str fixes these issues."},{"line_number":1062,"context_line":"        # Fix with encodeutils.safe_decode CAN BE REMOVED"},{"line_number":1063,"context_line":"        # after librados\u0027s fix will be in stable for some time."}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_dedf0ad4","line":1060,"range":{"start_line":1056,"start_character":9,"end_line":1060,"end_character":44},"updated":"2019-06-06 12:27:26.000000000","message":"is the ceph job still running pyhon2 only?\ni guess we should swap\nhttps://github.com/openstack/nova/blob/master/.zuul.yaml#L319\nover to the python 3 version at some point and move the python2 version to the experimental pipeline.","commit_id":"4866220cf63a58a0e0df3080b02b0dab04da17a5"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"4c8e479326afaa3dbadd44d85b8b995ca4b1635b","unresolved":false,"context_lines":[{"line_number":1053,"context_line":"                        image_id, base_image_id):"},{"line_number":1054,"context_line":"        \"\"\"Creates an RBD snapshot directly."},{"line_number":1055,"context_line":"        \"\"\""},{"line_number":1056,"context_line":"        # Librados\u0027s get_fsid is represented as binary"},{"line_number":1057,"context_line":"        # in py3 instead of str as it is in py2."},{"line_number":1058,"context_line":"        # This causes problems with nova rbd"},{"line_number":1059,"context_line":"        # driver as we rely on get_fsid return value"},{"line_number":1060,"context_line":"        # which should be string, not bytes."},{"line_number":1061,"context_line":"        # Decode binary to str fixes these issues."},{"line_number":1062,"context_line":"        # Fix with encodeutils.safe_decode CAN BE REMOVED"},{"line_number":1063,"context_line":"        # after librados\u0027s fix will be in stable for some time."}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_145b3e2e","line":1060,"range":{"start_line":1056,"start_character":9,"end_line":1060,"end_character":44},"in_reply_to":"9fb8cfa7_dedf0ad4","updated":"2019-06-06 16:44:44.000000000","message":"We do need to switch to the py3 job for our default, yes. But note that this bug doesn\u0027t make anything in the py3 job fail -- it will just be slow and not a fast ceph COW clone. So I don\u0027t think the py3 job would have caught any issue here.","commit_id":"4866220cf63a58a0e0df3080b02b0dab04da17a5"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"f28b66d695344756805079d15dab3f4f19ed17e6","unresolved":false,"context_lines":[{"line_number":1067,"context_line":"        # https://bugs.launchpad.net/glance-store/+bug/1816721"},{"line_number":1068,"context_line":"        # https://bugs.launchpad.net/cinder/+bug/1816468"},{"line_number":1069,"context_line":"        # https://tracker.ceph.com/issues/38381"},{"line_number":1070,"context_line":"        fsid \u003d encodeutils.safe_decode(self.driver.get_fsid())"},{"line_number":1071,"context_line":"        # NOTE(nic): Nova has zero comprehension of how Glance\u0027s image store"},{"line_number":1072,"context_line":"        # is configured, but we can infer what storage pool Glance is using"},{"line_number":1073,"context_line":"        # by looking at the parent image.  If using authx, write access should"}],"source_content_type":"text/x-python","patch_set":6,"id":"9fb8cfa7_712f2ca1","line":1070,"updated":"2019-06-06 16:41:59.000000000","message":"Looks like the change to this file is not needed if you\u0027ve already decoded the value in the get_fsid() method in nova/virt/libvirt/storage/rbd_utils.py","commit_id":"4866220cf63a58a0e0df3080b02b0dab04da17a5"}],"nova/virt/libvirt/storage/rbd_utils.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"f7bc8d87a1571a43fc927e979411572a3598aee6","unresolved":false,"context_lines":[{"line_number":195,"context_line":""},{"line_number":196,"context_line":"    def get_fsid(self):"},{"line_number":197,"context_line":"        with RADOSClient(self) as client:"},{"line_number":198,"context_line":"            return client.cluster.get_fsid()"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"    def is_cloneable(self, image_location, image_meta):"},{"line_number":201,"context_line":"        url \u003d image_location[\u0027url\u0027]"}],"source_content_type":"text/x-python","patch_set":2,"id":"9fdfeff1_868e49ce","line":198,"range":{"start_line":198,"start_character":12,"end_line":198,"end_character":44},"updated":"2019-02-06 21:44:20.000000000","message":"Why not here instead? Looking around at the other usage of this method, it looks like it should be subject to the same problem.","commit_id":"523834e4ec1a15d7d53f42ce07d2e609268b2044"},{"author":{"_account_id":27339,"name":"Michal Arbet","email":"michal.arbet@ultimum.io","username":"michalarbet"},"change_message_id":"9fb3351631985b61a97f8373a4d991ea107500a1","unresolved":false,"context_lines":[{"line_number":195,"context_line":""},{"line_number":196,"context_line":"    def get_fsid(self):"},{"line_number":197,"context_line":"        with RADOSClient(self) as client:"},{"line_number":198,"context_line":"            return client.cluster.get_fsid()"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"    def is_cloneable(self, image_location, image_meta):"},{"line_number":201,"context_line":"        url \u003d image_location[\u0027url\u0027]"}],"source_content_type":"text/x-python","patch_set":2,"id":"9fdfeff1_6991b6f1","line":198,"range":{"start_line":198,"start_character":12,"end_line":198,"end_character":44},"in_reply_to":"9fdfeff1_868e49ce","updated":"2019-02-06 22:39:05.000000000","message":"Done","commit_id":"523834e4ec1a15d7d53f42ce07d2e609268b2044"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"41c31e2deca24454e95316e7fc0c513be2042833","unresolved":false,"context_lines":[{"line_number":195,"context_line":""},{"line_number":196,"context_line":"    def get_fsid(self):"},{"line_number":197,"context_line":"        with RADOSClient(self) as client:"},{"line_number":198,"context_line":"            return encodeutils.safe_decode(client.cluster.get_fsid())"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"    def is_cloneable(self, image_location, image_meta):"},{"line_number":201,"context_line":"        url \u003d image_location[\u0027url\u0027]"}],"source_content_type":"text/x-python","patch_set":3,"id":"9fdfeff1_7c697289","line":198,"updated":"2019-02-06 22:38:02.000000000","message":"The fact that this wasn\u0027t causing test failures means we lack coverage for it (presumably that rather than that it\u0027s not a problem). Can we add some?","commit_id":"d22fe07e27861f01fdf71d4964b1aae4ea8af5cd"}]}
