)]}'
{"nova/scheduler/host_manager.py":[{"author":{"_account_id":2835,"name":"Brian Elliott","email":"bdelliott@gmail.com","username":"belliott"},"change_message_id":"fba986500ba29e504af5bd2c54570171f4542c8b","unresolved":false,"context_lines":[{"line_number":475,"context_line":"        \"\"\"Filter hosts and return only ones passing all filters.\"\"\""},{"line_number":476,"context_line":""},{"line_number":477,"context_line":"        def _strip_ignore_hosts(filtered_hosts, hosts_to_ignore):"},{"line_number":478,"context_line":"            filtered_hosts \u003d [host for host in filtered_hosts"},{"line_number":479,"context_line":"                    if host.host not in hosts_to_ignore]"},{"line_number":480,"context_line":"            ignored_hosts_str \u003d \u0027, \u0027.join(host.host"},{"line_number":481,"context_line":"                    for host in set(hosts) - set(filtered_hosts))"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a29b11f_0a1df6bc","line":478,"updated":"2015-10-27 00:25:16.000000000","message":"Could be even faster by doing a single loop over filtered_hosts instead of two here (one to create filtered_hosts list and one to create the ignored_hosts string, but that is nitpicking since this already way faster. :)","commit_id":"765f3f45696ed658437cf9c18b176ef8bcc1d238"},{"author":{"_account_id":2835,"name":"Brian Elliott","email":"bdelliott@gmail.com","username":"belliott"},"change_message_id":"fba986500ba29e504af5bd2c54570171f4542c8b","unresolved":false,"context_lines":[{"line_number":483,"context_line":"            return filtered_hosts"},{"line_number":484,"context_line":""},{"line_number":485,"context_line":"        def _match_forced_hosts(filtered_hosts, hosts_to_force):"},{"line_number":486,"context_line":"            filtered_hosts \u003d [host for host in filtered_hosts"},{"line_number":487,"context_line":"                    if host.host in hosts_to_force]"},{"line_number":488,"context_line":"            if filtered_hosts:"},{"line_number":489,"context_line":"                forced_hosts_str \u003d \u0027, \u0027.join(host.host"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a29b11f_6a826aca","line":486,"updated":"2015-10-27 00:25:16.000000000","message":"Same as above","commit_id":"765f3f45696ed658437cf9c18b176ef8bcc1d238"},{"author":{"_account_id":2835,"name":"Brian Elliott","email":"bdelliott@gmail.com","username":"belliott"},"change_message_id":"fba986500ba29e504af5bd2c54570171f4542c8b","unresolved":false,"context_lines":[{"line_number":497,"context_line":"            return filtered_hosts"},{"line_number":498,"context_line":""},{"line_number":499,"context_line":"        def _match_forced_nodes(filtered_hosts, nodes_to_force):"},{"line_number":500,"context_line":"            filtered_hosts \u003d [host for host in filtered_hosts"},{"line_number":501,"context_line":"                    if host.nodename in nodes_to_force]"},{"line_number":502,"context_line":"            if filtered_hosts:"},{"line_number":503,"context_line":"                forced_nodes_str \u003d \u0027, \u0027.join(host.nodename"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a29b11f_2a6d5232","line":500,"updated":"2015-10-27 00:25:16.000000000","message":"Same as above","commit_id":"765f3f45696ed658437cf9c18b176ef8bcc1d238"}]}
