)]}'
{"cinder/db/sqlalchemy/migrate_repo/versions/087_fix_replication_status_default_upgrade.sql":[{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"c6a5db985edfd7a26220b063d79e07213d156b1e","unresolved":false,"context_lines":[{"line_number":29,"context_line":"   This migration will fix this updating the volume_status field based on the"},{"line_number":30,"context_line":"   volume type\u0027s replication status."},{"line_number":31,"context_line":"*/"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"UPDATE volumes"},{"line_number":34,"context_line":"SET replication_status\u003d\"enabled\""},{"line_number":35,"context_line":"WHERE (volumes.deleted\u003d0 or volumes.deleted IS NULL)"}],"source_content_type":"text/x-sql","patch_set":4,"id":"da4df55a_aaa21e49","line":32,"updated":"2016-12-26 15:24:59.000000000","message":"It fails with PostgreSQL. Probably, we have to hold on this patch until tests cinder.tests.unit.test_migrations will be executed on gates with MySQL and PostgreSQL","commit_id":"0a31f0aac464fcc39f8786835ed1ef82af5da3a8"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"898cb5f462509230fc6d9ccd87d7ccde86a630dd","unresolved":false,"context_lines":[{"line_number":29,"context_line":"   This migration will fix this updating the volume_status field based on the"},{"line_number":30,"context_line":"   volume type\u0027s replication status."},{"line_number":31,"context_line":"*/"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"UPDATE volumes"},{"line_number":34,"context_line":"SET replication_status\u003d\"enabled\""},{"line_number":35,"context_line":"WHERE (volumes.deleted\u003d0 or volumes.deleted IS NULL)"}],"source_content_type":"text/x-sql","patch_set":4,"id":"7a3c09a3_f8cf1e27","line":32,"in_reply_to":"7a3c09a3_c34fdf8f","updated":"2017-01-18 20:24:43.000000000","message":"You can rebase this patch on my one [1] to see failed tests\n\n[1] https://review.openstack.org/#/c/415012/","commit_id":"0a31f0aac464fcc39f8786835ed1ef82af5da3a8"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"d0be1c5318094fc6218d4d70235ade4818054e21","unresolved":false,"context_lines":[{"line_number":29,"context_line":"   This migration will fix this updating the volume_status field based on the"},{"line_number":30,"context_line":"   volume type\u0027s replication status."},{"line_number":31,"context_line":"*/"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"UPDATE volumes"},{"line_number":34,"context_line":"SET replication_status\u003d\"enabled\""},{"line_number":35,"context_line":"WHERE (volumes.deleted\u003d0 or volumes.deleted IS NULL)"}],"source_content_type":"text/x-sql","patch_set":4,"id":"5a3905b3_e1b920ee","line":32,"in_reply_to":"7a3c09a3_f8cf1e27","updated":"2017-01-19 10:07:18.000000000","message":"Your patch is not rebased on top of latest master, so I would get merge conflict due to the missing migration.  I\u0027ll wait until your patch gets merged.  :-(","commit_id":"0a31f0aac464fcc39f8786835ed1ef82af5da3a8"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"66ec4e2e6e9d63e0cc66f61f49ffda83c6b6c84a","unresolved":false,"context_lines":[{"line_number":29,"context_line":"   This migration will fix this updating the volume_status field based on the"},{"line_number":30,"context_line":"   volume type\u0027s replication status."},{"line_number":31,"context_line":"*/"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"UPDATE volumes"},{"line_number":34,"context_line":"SET replication_status\u003d\"enabled\""},{"line_number":35,"context_line":"WHERE (volumes.deleted\u003d0 or volumes.deleted IS NULL)"}],"source_content_type":"text/x-sql","patch_set":4,"id":"7a3c09a3_c34fdf8f","line":32,"in_reply_to":"da4df55a_aaa21e49","updated":"2017-01-18 17:19:25.000000000","message":"Could you provide the failure so I can try to figure out what\u0027s wrong?","commit_id":"0a31f0aac464fcc39f8786835ed1ef82af5da3a8"}],"cinder/tests/unit/test_migrations.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"d9e58cffcd8703ee29507dd9683be1d9e4989e32","unresolved":false,"context_lines":[{"line_number":1098,"context_line":"        self.assertIsInstance(workers.c.race_preventer.type,"},{"line_number":1099,"context_line":"                              self.INTEGER_TYPE)"},{"line_number":1100,"context_line":""},{"line_number":1101,"context_line":"    def _pre_upgrade_092(self, engine):"},{"line_number":1102,"context_line":"        \"\"\"Add data to test the SQL migration.\"\"\""},{"line_number":1103,"context_line":"        types_table \u003d db_utils.get_table(engine, \u0027volume_types\u0027)"},{"line_number":1104,"context_line":"        for i in range(1, 5):"}],"source_content_type":"text/x-python","patch_set":8,"id":"1a430d35_8b028008","line":1101,"range":{"start_line":1101,"start_character":20,"end_line":1101,"end_character":24},"updated":"2017-02-08 14:41:27.000000000","message":"Unfortunately, migration number will need to be bumped up now that we have added the final Ocata placeholders.","commit_id":"583fe724c69b76c9d0b82cf4bda7c002a53e630a"}],"cinder/volume/manager.py":[{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"e885011faa5c4267e3de86eb6f970991aa3e6193","unresolved":false,"context_lines":[{"line_number":3662,"context_line":""},{"line_number":3663,"context_line":"        Instructs a replication capable/configured backend to failover"},{"line_number":3664,"context_line":"        to one of it\u0027s secondary replication targets. host\u003dNone is"},{"line_number":3665,"context_line":"        an acceetable input, and leaves it to the driver to failover"},{"line_number":3666,"context_line":"        to the only configured target, or to choose a target on it\u0027s"},{"line_number":3667,"context_line":"        own. All of the hosts volumes will be passed on to the driver"},{"line_number":3668,"context_line":"        in order for it to determine the replicated volumes on the host,"}],"source_content_type":"text/x-python","patch_set":12,"id":"df140735_e09818c1","line":3665,"range":{"start_line":3665,"start_character":15,"end_line":3665,"end_character":16},"updated":"2017-05-31 20:52:40.000000000","message":"typo","commit_id":"3963595bed36bd7061927f9bbec10fd403bb22fd"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"d8f9713ae9ec020d90001a1f365564d357cd03ec","unresolved":false,"context_lines":[{"line_number":3662,"context_line":""},{"line_number":3663,"context_line":"        Instructs a replication capable/configured backend to failover"},{"line_number":3664,"context_line":"        to one of it\u0027s secondary replication targets. host\u003dNone is"},{"line_number":3665,"context_line":"        an acceetable input, and leaves it to the driver to failover"},{"line_number":3666,"context_line":"        to the only configured target, or to choose a target on it\u0027s"},{"line_number":3667,"context_line":"        own. All of the hosts volumes will be passed on to the driver"},{"line_number":3668,"context_line":"        in order for it to determine the replicated volumes on the host,"}],"source_content_type":"text/x-python","patch_set":12,"id":"df140735_f128de34","line":3665,"range":{"start_line":3665,"start_character":15,"end_line":3665,"end_character":16},"in_reply_to":"df140735_e09818c1","updated":"2017-06-01 10:29:42.000000000","message":"Me and my clumsy fingers... will update if I send another patch.","commit_id":"3963595bed36bd7061927f9bbec10fd403bb22fd"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"e885011faa5c4267e3de86eb6f970991aa3e6193","unresolved":false,"context_lines":[{"line_number":3722,"context_line":"                update_data \u003d {u[\u0027volume_id\u0027]: u[\u0027updates\u0027]"},{"line_number":3723,"context_line":"                               for u in volume_update_list}"},{"line_number":3724,"context_line":"            except KeyError:"},{"line_number":3725,"context_line":"                msg \u003d \"Update list, doesn\u0027t include volume_id\""},{"line_number":3726,"context_line":"                raise exception.ProgrammingError(reason\u003dmsg)"},{"line_number":3727,"context_line":"        except Exception as exc:"},{"line_number":3728,"context_line":"            # NOTE(jdg): Drivers need to be aware if they fail during"}],"source_content_type":"text/x-python","patch_set":12,"id":"df140735_a06ea092","line":3725,"range":{"start_line":3725,"start_character":22,"end_line":3725,"end_character":62},"updated":"2017-05-31 20:52:40.000000000","message":"This should be wrapped with _().","commit_id":"3963595bed36bd7061927f9bbec10fd403bb22fd"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"d8f9713ae9ec020d90001a1f365564d357cd03ec","unresolved":false,"context_lines":[{"line_number":3722,"context_line":"                update_data \u003d {u[\u0027volume_id\u0027]: u[\u0027updates\u0027]"},{"line_number":3723,"context_line":"                               for u in volume_update_list}"},{"line_number":3724,"context_line":"            except KeyError:"},{"line_number":3725,"context_line":"                msg \u003d \"Update list, doesn\u0027t include volume_id\""},{"line_number":3726,"context_line":"                raise exception.ProgrammingError(reason\u003dmsg)"},{"line_number":3727,"context_line":"        except Exception as exc:"},{"line_number":3728,"context_line":"            # NOTE(jdg): Drivers need to be aware if they fail during"}],"source_content_type":"text/x-python","patch_set":12,"id":"df140735_d1127a09","line":3725,"range":{"start_line":3725,"start_character":22,"end_line":3725,"end_character":62},"in_reply_to":"df140735_a06ea092","updated":"2017-06-01 10:29:42.000000000","message":"Not afaik, since this will not be reported back to the user but logged in c-vol logs as an exception, so this would have used _LE back when we translated those.","commit_id":"3963595bed36bd7061927f9bbec10fd403bb22fd"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"3c8e329fe26aa6bd3d42804520678e32360970a2","unresolved":false,"context_lines":[{"line_number":3722,"context_line":"                update_data \u003d {u[\u0027volume_id\u0027]: u[\u0027updates\u0027]"},{"line_number":3723,"context_line":"                               for u in volume_update_list}"},{"line_number":3724,"context_line":"            except KeyError:"},{"line_number":3725,"context_line":"                msg \u003d \"Update list, doesn\u0027t include volume_id\""},{"line_number":3726,"context_line":"                raise exception.ProgrammingError(reason\u003dmsg)"},{"line_number":3727,"context_line":"        except Exception as exc:"},{"line_number":3728,"context_line":"            # NOTE(jdg): Drivers need to be aware if they fail during"}],"source_content_type":"text/x-python","patch_set":12,"id":"df140735_e8022409","line":3725,"range":{"start_line":3725,"start_character":22,"end_line":3725,"end_character":62},"in_reply_to":"df140735_d1127a09","updated":"2017-06-01 15:41:13.000000000","message":"I really would rather avoid confusion, since there seems to be too much around all this, by just using _() for all exception messages. It\u0027s really not clear if an exception message reaches an end user or not in a lot of cases unless you trace through all paths of the code. Which honestly the majority of people will not do. So if there are cases where there is no translation on an exception string, that pattern will get copied and used elsewhere where it may or may not still be true that it only ever gets to a log message.\n\nBut as you say, this case does not bubble up so it follows the current translation guidelines. Something to think about though.","commit_id":"3963595bed36bd7061927f9bbec10fd403bb22fd"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"325b394f5b7c02c0eb7f3f5fbc4a7c68222cd286","unresolved":false,"context_lines":[{"line_number":3722,"context_line":"                update_data \u003d {u[\u0027volume_id\u0027]: u[\u0027updates\u0027]"},{"line_number":3723,"context_line":"                               for u in volume_update_list}"},{"line_number":3724,"context_line":"            except KeyError:"},{"line_number":3725,"context_line":"                msg \u003d \"Update list, doesn\u0027t include volume_id\""},{"line_number":3726,"context_line":"                raise exception.ProgrammingError(reason\u003dmsg)"},{"line_number":3727,"context_line":"        except Exception as exc:"},{"line_number":3728,"context_line":"            # NOTE(jdg): Drivers need to be aware if they fail during"}],"source_content_type":"text/x-python","patch_set":12,"id":"df140735_400d4d9f","line":3725,"range":{"start_line":3725,"start_character":22,"end_line":3725,"end_character":62},"in_reply_to":"df140735_e8022409","updated":"2017-06-02 09:42:55.000000000","message":"I understand your concern, and if this was just a matter of wasted CPU time making the call I would vote for adding _() in all exception messages, but unfortunately we have to take into consideration the unnecessary increase in the burden of the translation team, and that\u0027s why I try to thread carefully when adding translation to strings.","commit_id":"3963595bed36bd7061927f9bbec10fd403bb22fd"}]}
