)]}'
{"cinder/api/common.py":[{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"0edb030fcce95cdc8ea3149b1a98e8ffa9413bfd","unresolved":false,"context_lines":[{"line_number":36,"context_line":"               default\u003d1000,"},{"line_number":37,"context_line":"               help\u003d\u0027The maximum number of items that a collection \u0027"},{"line_number":38,"context_line":"                    \u0027resource returns in a single response\u0027),"},{"line_number":39,"context_line":"    cfg.StrOpt(\u0027resource_query_filters_file\u0027,"},{"line_number":40,"context_line":"               default\u003d\u0027/etc/cinder/resource_filters.json\u0027,"},{"line_number":41,"context_line":"               help\u003d\"Json file indicating user visible filter \""},{"line_number":42,"context_line":"                    \"parameters for list queries.\"),"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_3d3a32e7","line":39,"updated":"2019-01-21 02:14:23.000000000","message":"We should also mention something about \"use default\" description in here, otherwise, it perhaps makes the user confusing.","commit_id":"610f1a9b32674529ae822a8c6bcf153fd08d2dc5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"0edb030fcce95cdc8ea3149b1a98e8ffa9413bfd","unresolved":false,"context_lines":[{"line_number":355,"context_line":"    if not _FILTERS_COLLECTION:"},{"line_number":356,"context_line":"        try:"},{"line_number":357,"context_line":"            with open(CONF.resource_query_filters_file, \u0027r\u0027) as filters_file:"},{"line_number":358,"context_line":"                _FILTERS_COLLECTION \u003d json.load(filters_file)"},{"line_number":359,"context_line":"        except OSError:"},{"line_number":360,"context_line":"            _FILTERS_COLLECTION \u003d {"},{"line_number":361,"context_line":"                \"volume\": [\"name\", \"status\", \"metadata\","}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_3d131269","line":358,"updated":"2019-01-21 02:14:23.000000000","message":"If it\u0027s a json load error, will throw an ValueError. Should we also address it?","commit_id":"610f1a9b32674529ae822a8c6bcf153fd08d2dc5"},{"author":{"_account_id":20722,"name":"Yikun Jiang","email":"yikunkero@gmail.com","username":"yikunkero"},"change_message_id":"0edb030fcce95cdc8ea3149b1a98e8ffa9413bfd","unresolved":false,"context_lines":[{"line_number":357,"context_line":"            with open(CONF.resource_query_filters_file, \u0027r\u0027) as filters_file:"},{"line_number":358,"context_line":"                _FILTERS_COLLECTION \u003d json.load(filters_file)"},{"line_number":359,"context_line":"        except OSError:"},{"line_number":360,"context_line":"            _FILTERS_COLLECTION \u003d {"},{"line_number":361,"context_line":"                \"volume\": [\"name\", \"status\", \"metadata\","},{"line_number":362,"context_line":"                           \"bootable\", \"migration_status\", \"availability_zone\","},{"line_number":363,"context_line":"                           \"group_id\"],"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_1d0ace25","line":360,"updated":"2019-01-21 02:14:23.000000000","message":"it\u0027s better add some warning log in here.","commit_id":"610f1a9b32674529ae822a8c6bcf153fd08d2dc5"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"bf5096b8a5624b67285b3b6eb9362de0a7ef1095","unresolved":false,"context_lines":[{"line_number":357,"context_line":"            with open(CONF.resource_query_filters_file, \u0027r\u0027) as filters_file:"},{"line_number":358,"context_line":"                _FILTERS_COLLECTION \u003d json.load(filters_file)"},{"line_number":359,"context_line":"        except OSError:"},{"line_number":360,"context_line":"            _FILTERS_COLLECTION \u003d {"},{"line_number":361,"context_line":"                \"volume\": [\"name\", \"status\", \"metadata\","},{"line_number":362,"context_line":"                           \"bootable\", \"migration_status\", \"availability_zone\","},{"line_number":363,"context_line":"                           \"group_id\"],"},{"line_number":364,"context_line":"                \"backup\": [\"name\", \"status\", \"volume_id\"],"},{"line_number":365,"context_line":"                \"snapshot\": [\"name\", \"status\", \"volume_id\", \"metadata\","},{"line_number":366,"context_line":"                             \"availability_zone\"],"},{"line_number":367,"context_line":"                \"group\": [],"},{"line_number":368,"context_line":"                \"group_snapshot\": [\"status\", \"group_id\"],"},{"line_number":369,"context_line":"                \"attachment\": [\"volume_id\", \"status\", \"instance_id\","},{"line_number":370,"context_line":"                               \"attach_status\"],"},{"line_number":371,"context_line":"                \"message\": [\"resource_uuid\", \"resource_type\", \"event_id\","},{"line_number":372,"context_line":"                            \"request_id\", \"message_level\"],"},{"line_number":373,"context_line":"                \"pool\": [\"name\", \"volume_type\"],"},{"line_number":374,"context_line":"                \"volume_type\": []"},{"line_number":375,"context_line":"            }"},{"line_number":376,"context_line":""},{"line_number":377,"context_line":""},{"line_number":378,"context_line":"def get_enabled_resource_filters(resource\u003dNone):"}],"source_content_type":"text/x-python","patch_set":1,"id":"bfdaf3ff_6ae1582a","line":375,"range":{"start_line":360,"start_character":12,"end_line":375,"end_character":13},"updated":"2019-01-17 19:58:28.000000000","message":"I\u0027m still not sure of adding the valid filters in the code as some part of the approach in mv 3.31 [1] was to separate it from the code.\n\n[1] https://review.openstack.org/#/c/444598/21/cinder/api/common.py@48","commit_id":"610f1a9b32674529ae822a8c6bcf153fd08d2dc5"}]}
