)]}'
{"cinder/tests/test_volume.py":[{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"c54fda4ae13dd869c1f49661f9067d9fbecc0589","unresolved":false,"context_lines":[{"line_number":329,"context_line":"        down. After process restarting this \u0027creating\u0027 status is"},{"line_number":330,"context_line":"        changed to \u0027error\u0027."},{"line_number":331,"context_line":"        \"\"\""},{"line_number":332,"context_line":"        volume \u003d tests_utils.create_volume(self.context, status\u003d\u0027creating\u0027,"},{"line_number":333,"context_line":"                                           size\u003d0, host\u003dCONF.host)"},{"line_number":334,"context_line":"        volume_id \u003d volume[\u0027id\u0027]"},{"line_number":335,"context_line":"        self.volume.init_host()"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a6ced46_9572670f","line":332,"updated":"2015-03-25 15:28:00.000000000","message":"Can we have a test with a downloading state also?","commit_id":"5434df63d7b23cf8f672b0519a7de064375af14f"}],"cinder/volume/manager.py":[{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"4c25c6bd04c9fd7d73eb2f31e8a932fae710e2e5","unresolved":false,"context_lines":[{"line_number":320,"context_line":"                        self.db.volume_update(ctxt,"},{"line_number":321,"context_line":"                                              volume[\u0027id\u0027],"},{"line_number":322,"context_line":"                                              {\u0027status\u0027: \u0027error\u0027})"},{"line_number":323,"context_line":"                elif volume[\u0027status\u0027] in (\u0027downloading\u0027, \u0027creating\u0027):"},{"line_number":324,"context_line":"                    LOG.info(_LI(\"volume %(volume_id)s stuck in \""},{"line_number":325,"context_line":"                                 \"%(volume_stat)s state. \""},{"line_number":326,"context_line":"                                 \"Changing to error state.\"),"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_e4e08e98","line":323,"updated":"2015-01-22 19:56:09.000000000","message":"Is this correct for \"creating\"?  I thought that with taskflow now the point was that taskflow would pick back up on the create process after a service restart / host init?  In which case it should be up to taskflow to handle this no?","commit_id":"e4f630308e70fc313189f9468ebe8061fff88c30"},{"author":{"_account_id":1773,"name":"oliver-leahy-l","email":"oliver.leahy@hpe.com","username":"oliver-leahy-l"},"change_message_id":"4d737ac7ccb98930cb70d91df4376c4300e55412","unresolved":false,"context_lines":[{"line_number":320,"context_line":"                        self.db.volume_update(ctxt,"},{"line_number":321,"context_line":"                                              volume[\u0027id\u0027],"},{"line_number":322,"context_line":"                                              {\u0027status\u0027: \u0027error\u0027})"},{"line_number":323,"context_line":"                elif volume[\u0027status\u0027] in (\u0027downloading\u0027, \u0027creating\u0027):"},{"line_number":324,"context_line":"                    LOG.info(_LI(\"volume %(volume_id)s stuck in \""},{"line_number":325,"context_line":"                                 \"%(volume_stat)s state. \""},{"line_number":326,"context_line":"                                 \"Changing to error state.\"),"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_9c5aad4e","line":323,"in_reply_to":"1a930d6b_6adc5be5","updated":"2015-01-23 09:22:28.000000000","message":"John, I guess if the flow for the delete operation was implemented then that would handle deleting volumes stuck in these states. But since that flow isn\u0027t done yet this is the only place to do handle this.","commit_id":"e4f630308e70fc313189f9468ebe8061fff88c30"},{"author":{"_account_id":14021,"name":"Yasuaki Nagata","email":"yasuaki.nagata@intellilink.co.jp","username":"yasuaki_nagata"},"change_message_id":"eae24ad21646604a6bc8eb9113ab5d58235c3ef2","unresolved":false,"context_lines":[{"line_number":320,"context_line":"                        self.db.volume_update(ctxt,"},{"line_number":321,"context_line":"                                              volume[\u0027id\u0027],"},{"line_number":322,"context_line":"                                              {\u0027status\u0027: \u0027error\u0027})"},{"line_number":323,"context_line":"                elif volume[\u0027status\u0027] in (\u0027downloading\u0027, \u0027creating\u0027):"},{"line_number":324,"context_line":"                    LOG.info(_LI(\"volume %(volume_id)s stuck in \""},{"line_number":325,"context_line":"                                 \"%(volume_stat)s state. \""},{"line_number":326,"context_line":"                                 \"Changing to error state.\"),"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a930d6b_6adc5be5","line":323,"in_reply_to":"1a930d6b_e4e08e98","updated":"2015-01-23 04:15:47.000000000","message":"As a result of the bug reproduction, I confirmed that the status does not change from the creating.\nI think it difficult to use taskflow on init_host. Do you have an idea?","commit_id":"e4f630308e70fc313189f9468ebe8061fff88c30"},{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"5c4cdea1b57c8fe253d097478c9cbc7bddbbdd6f","unresolved":false,"context_lines":[{"line_number":317,"context_line":"                             {\u0027volume_id\u0027: volume[\u0027id\u0027],"},{"line_number":318,"context_line":"                              \u0027volume_stat\u0027: volume[\u0027status\u0027]})"},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"                    self.driver.clear_download(ctxt, volume)"},{"line_number":321,"context_line":"                    self.db.volume_update(ctxt,"},{"line_number":322,"context_line":"                                          volume[\u0027id\u0027],"},{"line_number":323,"context_line":"                                          {\u0027status\u0027: \u0027error\u0027})"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a6ced46_f5563bcd","line":320,"updated":"2015-03-25 15:17:40.000000000","message":"Is clear_download(..) idempotent? I.e. if the volume[\u0027status\u0027] is \u0027creating\u0027, will calling this cause an issue?\nPerhaps a conditional should be added to only call clear_download(..) if the status is \u0027downloading\u0027.","commit_id":"5434df63d7b23cf8f672b0519a7de064375af14f"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"f72b9b5fc52fe8f225747e4d2cae6a000c2c0a8f","unresolved":false,"context_lines":[{"line_number":317,"context_line":"                             {\u0027volume_id\u0027: volume[\u0027id\u0027],"},{"line_number":318,"context_line":"                              \u0027volume_stat\u0027: volume[\u0027status\u0027]})"},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"                    self.driver.clear_download(ctxt, volume)"},{"line_number":321,"context_line":"                    self.db.volume_update(ctxt,"},{"line_number":322,"context_line":"                                          volume[\u0027id\u0027],"},{"line_number":323,"context_line":"                                          {\u0027status\u0027: \u0027error\u0027})"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a6ced46_f5e55bdc","line":320,"in_reply_to":"1a6ced46_f5563bcd","updated":"2015-03-25 15:25:10.000000000","message":"Good catch, thanks!","commit_id":"5434df63d7b23cf8f672b0519a7de064375af14f"},{"author":{"_account_id":170,"name":"Mike Perez","email":"thingee@gmail.com","username":"thingee"},"change_message_id":"8e4418a2ee95ff54fc26bc8dbfa249dbcd57b10e","unresolved":false,"context_lines":[{"line_number":331,"context_line":"                           \"%(snap_stat)s state. \""},{"line_number":332,"context_line":"                           \"Changing to error state.\"),"},{"line_number":333,"context_line":"                         {\u0027snap_id\u0027: snapshot[\u0027id\u0027],"},{"line_number":334,"context_line":"                          \u0027snap_stat\u0027: snapshot[\u0027status\u0027]})"},{"line_number":335,"context_line":""},{"line_number":336,"context_line":"                self.db.snapshot_update(ctxt,"},{"line_number":337,"context_line":"                                        snapshot[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a6ced46_155cb7ec","line":334,"updated":"2015-03-25 15:18:35.000000000","message":"Not sure getting the state really matters here since we\u0027re filtering by only one status.","commit_id":"5434df63d7b23cf8f672b0519a7de064375af14f"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"f72b9b5fc52fe8f225747e4d2cae6a000c2c0a8f","unresolved":false,"context_lines":[{"line_number":331,"context_line":"                           \"%(snap_stat)s state. \""},{"line_number":332,"context_line":"                           \"Changing to error state.\"),"},{"line_number":333,"context_line":"                         {\u0027snap_id\u0027: snapshot[\u0027id\u0027],"},{"line_number":334,"context_line":"                          \u0027snap_stat\u0027: snapshot[\u0027status\u0027]})"},{"line_number":335,"context_line":""},{"line_number":336,"context_line":"                self.db.snapshot_update(ctxt,"},{"line_number":337,"context_line":"                                        snapshot[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":3,"id":"1a6ced46_75916bf0","line":334,"in_reply_to":"1a6ced46_155cb7ec","updated":"2015-03-25 15:25:10.000000000","message":"I prefer make it explicit to make it more flexible if we\u0027ll extend this code in a future","commit_id":"5434df63d7b23cf8f672b0519a7de064375af14f"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"a1bd422f7067117ef24c95e202a5c38de61e7881","unresolved":false,"context_lines":[{"line_number":349,"context_line":"                                                     self.host,"},{"line_number":350,"context_line":"                                                     {\u0027status\u0027: \u0027creating\u0027})"},{"line_number":351,"context_line":"            for snapshot in snapshots:"},{"line_number":352,"context_line":"                LOG.info(_(\"snapshot %(snap_id)s stuck in \""},{"line_number":353,"context_line":"                           \"%(snap_stat)s state. \""},{"line_number":354,"context_line":"                           \"Changing to error state.\"),"},{"line_number":355,"context_line":"                         {\u0027snap_id\u0027: snapshot[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":8,"id":"1a6ced46_1aeccdf2","line":352,"updated":"2015-03-26 00:03:25.000000000","message":"\u0027_\u0027 should be \u0027_LI\u0027.","commit_id":"1d822176d91a8a1a71b8ae8d1c15970a697a4d12"}]}
