)]}'
{"cinder/tests/unit/volume/drivers/hpe/test_hpe3par.py":[{"author":{"_account_id":21407,"name":"Kushal Wathore","email":"kushal.wathore@hpe.com","username":"kwathore"},"change_message_id":"ea0e51cdcfbe4903e696705b4c138e8c6ad7e39a","unresolved":false,"context_lines":[{"line_number":3027,"context_line":"                expected +"},{"line_number":3028,"context_line":"                self.standard_logout)"},{"line_number":3029,"context_line":""},{"line_number":3030,"context_line":"    def test_revert_to_snapshot(self):"},{"line_number":3031,"context_line":"        # setup_mock_client drive with default configuration"},{"line_number":3032,"context_line":"        # and return the mock HTTP 3PAR client"},{"line_number":3033,"context_line":"        volume \u003d {\u0027name\u0027: self.VOLUME_NAME,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f5c4f37_025492c9","line":3030,"range":{"start_line":3030,"start_character":8,"end_line":3030,"end_character":31},"updated":"2017-09-21 11:48:24.000000000","message":"Please add negative and replication scenarios.","commit_id":"a4dafd5d9b3e243e0f5f17d9399ca716c48e4ebb"}],"cinder/volume/drivers/hpe/hpe_3par_common.py":[{"author":{"_account_id":21407,"name":"Kushal Wathore","email":"kushal.wathore@hpe.com","username":"kwathore"},"change_message_id":"ea0e51cdcfbe4903e696705b4c138e8c6ad7e39a","unresolved":false,"context_lines":[{"line_number":3108,"context_line":"            LOG.debug(\"Found an online copy for %(volume)s\","},{"line_number":3109,"context_line":"                      {\u0027volume\u0027: volume_name})"},{"line_number":3110,"context_line":"            if optional:"},{"line_number":3111,"context_line":"                optional \u003d self.client._mergeDict(optional, {\u0027online\u0027: True})"},{"line_number":3112,"context_line":"            else:"},{"line_number":3113,"context_line":"                optional \u003d {\u0027online\u0027: True}"},{"line_number":3114,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f5c4f37_22c2f686","line":3111,"range":{"start_line":3111,"start_character":32,"end_line":3111,"end_character":38},"updated":"2017-09-21 11:48:24.000000000","message":"Do not use client private function here","commit_id":"a4dafd5d9b3e243e0f5f17d9399ca716c48e4ebb"},{"author":{"_account_id":23083,"name":"TommyLike","email":"tommylikehu@gmail.com","username":"TommyLike"},"change_message_id":"5fd7b634a27fe9444c21aeef9f0f16d8001f976a","unresolved":false,"context_lines":[{"line_number":3080,"context_line":"                raise exception.VolumeIsBusy(message\u003dmsg)"},{"line_number":3081,"context_line":""},{"line_number":3082,"context_line":"    def revert_to_snapshot(self, volume, snapshot):"},{"line_number":3083,"context_line":"        \"\"\"Revert volume from snapshot."},{"line_number":3084,"context_line":""},{"line_number":3085,"context_line":"        :param volume: A dictionary describing the volume to revert"},{"line_number":3086,"context_line":"        :param snapshot: A dictionary describing the latest snapshot"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f515b1d_e9b134e3","line":3083,"range":{"start_line":3083,"start_character":11,"end_line":3083,"end_character":39},"updated":"2017-09-25 11:30:00.000000000","message":"ditto","commit_id":"acb335f0f518ed449537350bb0d91cdc64454706"},{"author":{"_account_id":24952,"name":"Vivek Soni","email":"viveksoni31390@gmail.com","username":"sonivi"},"change_message_id":"7da75ca555e97269c9a2297735e98546e466324c","unresolved":false,"context_lines":[{"line_number":3080,"context_line":"                raise exception.VolumeIsBusy(message\u003dmsg)"},{"line_number":3081,"context_line":""},{"line_number":3082,"context_line":"    def revert_to_snapshot(self, volume, snapshot):"},{"line_number":3083,"context_line":"        \"\"\"Revert volume from snapshot."},{"line_number":3084,"context_line":""},{"line_number":3085,"context_line":"        :param volume: A dictionary describing the volume to revert"},{"line_number":3086,"context_line":"        :param snapshot: A dictionary describing the latest snapshot"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f515b1d_cdf0a4cc","line":3083,"range":{"start_line":3083,"start_character":11,"end_line":3083,"end_character":39},"in_reply_to":"7f515b1d_e9b134e3","updated":"2017-09-26 06:03:31.000000000","message":"Done","commit_id":"acb335f0f518ed449537350bb0d91cdc64454706"},{"author":{"_account_id":23083,"name":"TommyLike","email":"tommylikehu@gmail.com","username":"TommyLike"},"change_message_id":"5fd7b634a27fe9444c21aeef9f0f16d8001f976a","unresolved":false,"context_lines":[{"line_number":3092,"context_line":"        optional \u003d {}"},{"line_number":3093,"context_line":"        replication_flag \u003d self._volume_of_replicated_type(volume)"},{"line_number":3094,"context_line":"        if replication_flag:"},{"line_number":3095,"context_line":"            LOG.debug(\"Found replicated volume: %(volume)s\","},{"line_number":3096,"context_line":"                      {\u0027volume\u0027: volume_name})"},{"line_number":3097,"context_line":"            optional[\u0027allowRemoteCopyParent\u0027] \u003d True"},{"line_number":3098,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f515b1d_49d728ef","line":3095,"range":{"start_line":3095,"start_character":48,"end_line":3095,"end_character":58},"updated":"2017-09-25 11:30:00.000000000","message":"Missing period.","commit_id":"acb335f0f518ed449537350bb0d91cdc64454706"},{"author":{"_account_id":24952,"name":"Vivek Soni","email":"viveksoni31390@gmail.com","username":"sonivi"},"change_message_id":"7da75ca555e97269c9a2297735e98546e466324c","unresolved":false,"context_lines":[{"line_number":3092,"context_line":"        optional \u003d {}"},{"line_number":3093,"context_line":"        replication_flag \u003d self._volume_of_replicated_type(volume)"},{"line_number":3094,"context_line":"        if replication_flag:"},{"line_number":3095,"context_line":"            LOG.debug(\"Found replicated volume: %(volume)s\","},{"line_number":3096,"context_line":"                      {\u0027volume\u0027: volume_name})"},{"line_number":3097,"context_line":"            optional[\u0027allowRemoteCopyParent\u0027] \u003d True"},{"line_number":3098,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f515b1d_8dbcecdc","line":3095,"range":{"start_line":3095,"start_character":48,"end_line":3095,"end_character":58},"in_reply_to":"7f515b1d_49d728ef","updated":"2017-09-26 06:03:31.000000000","message":"Done","commit_id":"acb335f0f518ed449537350bb0d91cdc64454706"},{"author":{"_account_id":23083,"name":"TommyLike","email":"tommylikehu@gmail.com","username":"TommyLike"},"change_message_id":"5fd7b634a27fe9444c21aeef9f0f16d8001f976a","unresolved":false,"context_lines":[{"line_number":3104,"context_line":"                raise exception.VolumeBackendAPIException(data\u003dmsg)"},{"line_number":3105,"context_line":""},{"line_number":3106,"context_line":"        if self.client.isOnlinePhysicalCopy(volume_name):"},{"line_number":3107,"context_line":"            LOG.debug(\"Found an online copy for %(volume)s\","},{"line_number":3108,"context_line":"                      {\u0027volume\u0027: volume_name})"},{"line_number":3109,"context_line":"            optional[\u0027online\u0027] \u003d True"},{"line_number":3110,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7f515b1d_090b708e","line":3107,"range":{"start_line":3107,"start_character":44,"end_line":3107,"end_character":58},"updated":"2017-09-25 11:30:00.000000000","message":"Missing period.","commit_id":"acb335f0f518ed449537350bb0d91cdc64454706"},{"author":{"_account_id":24952,"name":"Vivek Soni","email":"viveksoni31390@gmail.com","username":"sonivi"},"change_message_id":"7da75ca555e97269c9a2297735e98546e466324c","unresolved":false,"context_lines":[{"line_number":3104,"context_line":"                raise exception.VolumeBackendAPIException(data\u003dmsg)"},{"line_number":3105,"context_line":""},{"line_number":3106,"context_line":"        if self.client.isOnlinePhysicalCopy(volume_name):"},{"line_number":3107,"context_line":"            LOG.debug(\"Found an online copy for %(volume)s\","},{"line_number":3108,"context_line":"                      {\u0027volume\u0027: volume_name})"},{"line_number":3109,"context_line":"            optional[\u0027online\u0027] \u003d True"},{"line_number":3110,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7f515b1d_6dbf70d0","line":3107,"range":{"start_line":3107,"start_character":44,"end_line":3107,"end_character":58},"in_reply_to":"7f515b1d_090b708e","updated":"2017-09-26 06:03:31.000000000","message":"Done","commit_id":"acb335f0f518ed449537350bb0d91cdc64454706"}],"cinder/volume/drivers/hpe/hpe_3par_fc.py":[{"author":{"_account_id":23083,"name":"TommyLike","email":"tommylikehu@gmail.com","username":"TommyLike"},"change_message_id":"5fd7b634a27fe9444c21aeef9f0f16d8001f976a","unresolved":false,"context_lines":[{"line_number":677,"context_line":""},{"line_number":678,"context_line":"    @utils.trace"},{"line_number":679,"context_line":"    def revert_to_snapshot(self, context, volume, snapshot):"},{"line_number":680,"context_line":"        \"\"\"Revert volume from snapshot.\"\"\""},{"line_number":681,"context_line":"        common \u003d self._login()"},{"line_number":682,"context_line":"        try:"},{"line_number":683,"context_line":"            common.revert_to_snapshot(volume, snapshot)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f515b1d_09bdb0b6","line":680,"range":{"start_line":680,"start_character":11,"end_line":680,"end_character":39},"updated":"2017-09-25 11:30:00.000000000","message":"ditto","commit_id":"acb335f0f518ed449537350bb0d91cdc64454706"},{"author":{"_account_id":24952,"name":"Vivek Soni","email":"viveksoni31390@gmail.com","username":"sonivi"},"change_message_id":"7da75ca555e97269c9a2297735e98546e466324c","unresolved":false,"context_lines":[{"line_number":677,"context_line":""},{"line_number":678,"context_line":"    @utils.trace"},{"line_number":679,"context_line":"    def revert_to_snapshot(self, context, volume, snapshot):"},{"line_number":680,"context_line":"        \"\"\"Revert volume from snapshot.\"\"\""},{"line_number":681,"context_line":"        common \u003d self._login()"},{"line_number":682,"context_line":"        try:"},{"line_number":683,"context_line":"            common.revert_to_snapshot(volume, snapshot)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f515b1d_edca406c","line":680,"range":{"start_line":680,"start_character":11,"end_line":680,"end_character":39},"in_reply_to":"7f515b1d_09bdb0b6","updated":"2017-09-26 06:03:31.000000000","message":"Done","commit_id":"acb335f0f518ed449537350bb0d91cdc64454706"}],"cinder/volume/drivers/hpe/hpe_3par_iscsi.py":[{"author":{"_account_id":23083,"name":"TommyLike","email":"tommylikehu@gmail.com","username":"TommyLike"},"change_message_id":"5fd7b634a27fe9444c21aeef9f0f16d8001f976a","unresolved":false,"context_lines":[{"line_number":948,"context_line":""},{"line_number":949,"context_line":"    @utils.trace"},{"line_number":950,"context_line":"    def revert_to_snapshot(self, context, volume, snapshot):"},{"line_number":951,"context_line":"        \"\"\"Revert volume from snapshot.\"\"\""},{"line_number":952,"context_line":"        common \u003d self._login()"},{"line_number":953,"context_line":"        try:"},{"line_number":954,"context_line":"            common.revert_to_snapshot(volume, snapshot)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f515b1d_c99d585a","line":951,"range":{"start_line":951,"start_character":10,"end_line":951,"end_character":42},"updated":"2017-09-25 11:30:00.000000000","message":"Revert volume to snapshot?","commit_id":"acb335f0f518ed449537350bb0d91cdc64454706"},{"author":{"_account_id":24952,"name":"Vivek Soni","email":"viveksoni31390@gmail.com","username":"sonivi"},"change_message_id":"7da75ca555e97269c9a2297735e98546e466324c","unresolved":false,"context_lines":[{"line_number":948,"context_line":""},{"line_number":949,"context_line":"    @utils.trace"},{"line_number":950,"context_line":"    def revert_to_snapshot(self, context, volume, snapshot):"},{"line_number":951,"context_line":"        \"\"\"Revert volume from snapshot.\"\"\""},{"line_number":952,"context_line":"        common \u003d self._login()"},{"line_number":953,"context_line":"        try:"},{"line_number":954,"context_line":"            common.revert_to_snapshot(volume, snapshot)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7f515b1d_cdc9c478","line":951,"range":{"start_line":951,"start_character":10,"end_line":951,"end_character":42},"in_reply_to":"7f515b1d_c99d585a","updated":"2017-09-26 06:03:31.000000000","message":"Done","commit_id":"acb335f0f518ed449537350bb0d91cdc64454706"}]}
