)]}'
{"cinder/api/v2/volumes.py":[{"author":{"_account_id":2759,"name":"Huang Zhiteng","email":"winston.d@gmail.com","username":"zhiteng-huang"},"change_message_id":"baf5d6f0728fa765b863bffb45ac9203b1c6c0ed","unresolved":false,"context_lines":[{"line_number":339,"context_line":"        req_volume_type \u003d volume.get(\u0027volume_type\u0027, None)"},{"line_number":340,"context_line":"        if req_volume_type:"},{"line_number":341,"context_line":"            try:"},{"line_number":342,"context_line":"                # NOTE: Admin context is required to get extra_specs of volume_type."},{"line_number":343,"context_line":"                if not uuidutils.is_uuid_like(req_volume_type):"},{"line_number":344,"context_line":"                    kwargs[\u0027volume_type\u0027] \u003d \\"},{"line_number":345,"context_line":"                        volume_types.get_volume_type_by_name("}],"source_content_type":"text/x-python","patch_set":1,"id":"ba15a1d1_03487886","line":342,"updated":"2015-09-15 06:33:12.000000000","message":"Line too long","commit_id":"ee7caf21e2a8c5cbea5833301ee10b6b6c568c03"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"2e5726b6ac1d3755a32a87c63ee17a3d2dccc24e","unresolved":false,"context_lines":[{"line_number":339,"context_line":"        req_volume_type \u003d volume.get(\u0027volume_type\u0027, None)"},{"line_number":340,"context_line":"        if req_volume_type:"},{"line_number":341,"context_line":"            try:"},{"line_number":342,"context_line":"                # NOTE: Admin context is required to get extra_specs of volume_type."},{"line_number":343,"context_line":"                if not uuidutils.is_uuid_like(req_volume_type):"},{"line_number":344,"context_line":"                    kwargs[\u0027volume_type\u0027] \u003d \\"},{"line_number":345,"context_line":"                        volume_types.get_volume_type_by_name("}],"source_content_type":"text/x-python","patch_set":1,"id":"ba15a1d1_46474c4b","line":342,"in_reply_to":"ba15a1d1_03487886","updated":"2015-09-15 13:17:56.000000000","message":"Done","commit_id":"ee7caf21e2a8c5cbea5833301ee10b6b6c568c03"}],"cinder/scheduler/filter_scheduler.py":[{"author":{"_account_id":2759,"name":"Huang Zhiteng","email":"winston.d@gmail.com","username":"zhiteng-huang"},"change_message_id":"24b073ce48abe154117788c80dba184b07a0dfc8","unresolved":false,"context_lines":[{"line_number":266,"context_line":"        volume_type \u003d request_spec.get(\"volume_type\", None)"},{"line_number":267,"context_line":"        resource_type \u003d request_spec.get(\"volume_type\", None)"},{"line_number":268,"context_line":"        # NOTE(xyang): Get extra_specs and add to volume_type and"},{"line_number":269,"context_line":"        #              resource_type if necessary."},{"line_number":270,"context_line":"        if \u0027extra_specs\u0027 not in volume_type:"},{"line_number":271,"context_line":"            extra_specs \u003d volume_types.get_volume_type_extra_specs("},{"line_number":272,"context_line":"                volume_type[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_e8f88d4b","line":269,"updated":"2015-09-16 04:37:48.000000000","message":"Please fix the way extra_specs were added to resource_type dict in either volume API or API create taskflow.","commit_id":"cfeb950f112b5b8a32ebf2a941d15e95541640ad"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"fb5ae11c6aaeca4b2c153ed37d1f4a97c230796f","unresolved":false,"context_lines":[{"line_number":266,"context_line":"        volume_type \u003d request_spec.get(\"volume_type\", None)"},{"line_number":267,"context_line":"        resource_type \u003d request_spec.get(\"volume_type\", None)"},{"line_number":268,"context_line":"        # NOTE(xyang): Get extra_specs and add to volume_type and"},{"line_number":269,"context_line":"        #              resource_type if necessary."},{"line_number":270,"context_line":"        if \u0027extra_specs\u0027 not in volume_type:"},{"line_number":271,"context_line":"            extra_specs \u003d volume_types.get_volume_type_extra_specs("},{"line_number":272,"context_line":"                volume_type[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_f9e928e7","line":269,"in_reply_to":"ba15a1d1_e8f88d4b","updated":"2015-09-16 15:08:09.000000000","message":"Removed this.  Added extra_specs in volume/api.py.","commit_id":"cfeb950f112b5b8a32ebf2a941d15e95541640ad"}],"cinder/volume/api.py":[{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"7cce2307a84ff7698ff61b50ef6669adb78a6c8d","unresolved":false,"context_lines":[{"line_number":170,"context_line":"                            first_type_id, second_type_id,"},{"line_number":171,"context_line":"                            first_type\u003dNone, second_type\u003dNone):"},{"line_number":172,"context_line":"        safe \u003d False"},{"line_number":173,"context_line":"        services \u003d objects.ServiceList.get_all_by_topic(context,"},{"line_number":174,"context_line":"                                                        \u0027cinder-volume\u0027,"},{"line_number":175,"context_line":"                                                        disabled\u003dTrue)"},{"line_number":176,"context_line":"        if len(services.objects) \u003d\u003d 1:"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_e82bad92","line":173,"updated":"2015-09-16 04:53:06.000000000","message":"I\u0027m having a problem with this line. The requires an admin context.","commit_id":"cfeb950f112b5b8a32ebf2a941d15e95541640ad"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"fb5ae11c6aaeca4b2c153ed37d1f4a97c230796f","unresolved":false,"context_lines":[{"line_number":170,"context_line":"                            first_type_id, second_type_id,"},{"line_number":171,"context_line":"                            first_type\u003dNone, second_type\u003dNone):"},{"line_number":172,"context_line":"        safe \u003d False"},{"line_number":173,"context_line":"        services \u003d objects.ServiceList.get_all_by_topic(context,"},{"line_number":174,"context_line":"                                                        \u0027cinder-volume\u0027,"},{"line_number":175,"context_line":"                                                        disabled\u003dTrue)"},{"line_number":176,"context_line":"        if len(services.objects) \u003d\u003d 1:"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_99c10c57","line":173,"in_reply_to":"ba15a1d1_e82bad92","updated":"2015-09-16 15:08:09.000000000","message":"Elevated context.","commit_id":"cfeb950f112b5b8a32ebf2a941d15e95541640ad"},{"author":{"_account_id":2759,"name":"Huang Zhiteng","email":"winston.d@gmail.com","username":"zhiteng-huang"},"change_message_id":"24b073ce48abe154117788c80dba184b07a0dfc8","unresolved":false,"context_lines":[{"line_number":177,"context_line":"            safe \u003d True"},{"line_number":178,"context_line":"        else:"},{"line_number":179,"context_line":"            type_a \u003d first_type or volume_types.get_volume_type("},{"line_number":180,"context_line":"                context,"},{"line_number":181,"context_line":"                first_type_id)"},{"line_number":182,"context_line":"            type_b \u003d second_type or volume_types.get_volume_type("},{"line_number":183,"context_line":"                context,"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_28ce855a","line":180,"updated":"2015-09-16 04:37:48.000000000","message":"shouldn\u0027t we just use elevated context here instead of making explicit extra call to get extra specs?","commit_id":"cfeb950f112b5b8a32ebf2a941d15e95541640ad"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"7cce2307a84ff7698ff61b50ef6669adb78a6c8d","unresolved":false,"context_lines":[{"line_number":177,"context_line":"            safe \u003d True"},{"line_number":178,"context_line":"        else:"},{"line_number":179,"context_line":"            type_a \u003d first_type or volume_types.get_volume_type("},{"line_number":180,"context_line":"                context,"},{"line_number":181,"context_line":"                first_type_id)"},{"line_number":182,"context_line":"            type_b \u003d second_type or volume_types.get_volume_type("},{"line_number":183,"context_line":"                context,"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_483c19e2","line":180,"in_reply_to":"ba15a1d1_28ce855a","updated":"2015-09-16 04:53:06.000000000","message":"I think John wants to separate volume_type and extra_specs. That\u0027s why I made a call to get_volume_type_extra_specs.","commit_id":"cfeb950f112b5b8a32ebf2a941d15e95541640ad"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"fb5ae11c6aaeca4b2c153ed37d1f4a97c230796f","unresolved":false,"context_lines":[{"line_number":177,"context_line":"            safe \u003d True"},{"line_number":178,"context_line":"        else:"},{"line_number":179,"context_line":"            type_a \u003d first_type or volume_types.get_volume_type("},{"line_number":180,"context_line":"                context,"},{"line_number":181,"context_line":"                first_type_id)"},{"line_number":182,"context_line":"            type_b \u003d second_type or volume_types.get_volume_type("},{"line_number":183,"context_line":"                context,"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_79a3d8b2","line":180,"in_reply_to":"ba15a1d1_483c19e2","updated":"2015-09-16 15:08:09.000000000","message":"Since context is already elevated on line 173, I just pass in the elevated context now.","commit_id":"cfeb950f112b5b8a32ebf2a941d15e95541640ad"},{"author":{"_account_id":2759,"name":"Huang Zhiteng","email":"winston.d@gmail.com","username":"zhiteng-huang"},"change_message_id":"24b073ce48abe154117788c80dba184b07a0dfc8","unresolved":false,"context_lines":[{"line_number":1452,"context_line":""},{"line_number":1453,"context_line":"        # Support specifying volume type by ID or name"},{"line_number":1454,"context_line":"        try:"},{"line_number":1455,"context_line":"            if uuidutils.is_uuid_like(new_type):"},{"line_number":1456,"context_line":"                vol_type \u003d volume_types.get_volume_type(context, new_type)"},{"line_number":1457,"context_line":"            else:"},{"line_number":1458,"context_line":"                vol_type \u003d volume_types.get_volume_type_by_name(context,"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_68ec7d8f","line":1455,"updated":"2015-09-16 04:37:48.000000000","message":"get extra_specs here for retype.","commit_id":"cfeb950f112b5b8a32ebf2a941d15e95541640ad"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"fb5ae11c6aaeca4b2c153ed37d1f4a97c230796f","unresolved":false,"context_lines":[{"line_number":1452,"context_line":""},{"line_number":1453,"context_line":"        # Support specifying volume type by ID or name"},{"line_number":1454,"context_line":"        try:"},{"line_number":1455,"context_line":"            if uuidutils.is_uuid_like(new_type):"},{"line_number":1456,"context_line":"                vol_type \u003d volume_types.get_volume_type(context, new_type)"},{"line_number":1457,"context_line":"            else:"},{"line_number":1458,"context_line":"                vol_type \u003d volume_types.get_volume_type_by_name(context,"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_99a82c8f","line":1455,"in_reply_to":"ba15a1d1_2310e64d","updated":"2015-09-16 15:08:09.000000000","message":"Done","commit_id":"cfeb950f112b5b8a32ebf2a941d15e95541640ad"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"7cce2307a84ff7698ff61b50ef6669adb78a6c8d","unresolved":false,"context_lines":[{"line_number":1452,"context_line":""},{"line_number":1453,"context_line":"        # Support specifying volume type by ID or name"},{"line_number":1454,"context_line":"        try:"},{"line_number":1455,"context_line":"            if uuidutils.is_uuid_like(new_type):"},{"line_number":1456,"context_line":"                vol_type \u003d volume_types.get_volume_type(context, new_type)"},{"line_number":1457,"context_line":"            else:"},{"line_number":1458,"context_line":"                vol_type \u003d volume_types.get_volume_type_by_name(context,"}],"source_content_type":"text/x-python","patch_set":5,"id":"ba15a1d1_2310e64d","line":1455,"in_reply_to":"ba15a1d1_68ec7d8f","updated":"2015-09-16 04:53:06.000000000","message":"You are right.","commit_id":"cfeb950f112b5b8a32ebf2a941d15e95541640ad"}]}
