)]}'
{"nova/tests/unit/objects/test_security_group_rule.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7ab4a5fcd47a9441ceb2b48aa6ef31a9813280b0","unresolved":false,"context_lines":[{"line_number":102,"context_line":"]"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"class _TestSecurityGroupRuleListObject(object):"},{"line_number":106,"context_line":"    @mock.patch(\u0027nova.db.security_group_rule_get_by_instance\u0027)"},{"line_number":107,"context_line":"    def test_get_by_instance(self, mock_get):"},{"line_number":108,"context_line":"        mock_get.return_value \u003d fake_rules"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_23a130aa","line":105,"updated":"2015-12-22 21:40:09.000000000","message":"I\u0027m surprised we didn\u0027t have this already for the existing get by security group method.","commit_id":"a3bb7908532e8a4067d4262a34695ef2a5c87621"}],"nova/virt/firewall.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7ab4a5fcd47a9441ceb2b48aa6ef31a9813280b0","unresolved":false,"context_lines":[{"line_number":401,"context_line":"        ipv4_rules +\u003d [\u0027-j $sg-fallback\u0027]"},{"line_number":402,"context_line":"        ipv6_rules +\u003d [\u0027-j $sg-fallback\u0027]"},{"line_number":403,"context_line":"        LOG.debug(\u0027Security Groups %s translated to ipv4: %r, ipv6: %r\u0027,"},{"line_number":404,"context_line":"                  instance.security_groups, ipv4_rules, ipv6_rules,"},{"line_number":405,"context_line":"                  instance\u003dinstance)"},{"line_number":406,"context_line":"        return ipv4_rules, ipv6_rules"},{"line_number":407,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_43947c36","line":404,"updated":"2015-12-22 21:40:09.000000000","message":"Eww, I\u0027m not crazy about potentially lazy-loading security groups from the instance just for a debug logging statement.\n\nWith the way this is, it\u0027s not even useful because the SecurityGroupList __repr__ doesn\u0027t log the objects:\n\nhttp://logs.openstack.org/10/259810/1/check/gate-tempest-dsvm-full/1d6e067/logs/screen-n-cpu.txt.gz#_2015-12-20_20_40_24_478\n\n\"Security Groups SecurityGroupList(objects\u003d[SecurityGroup(1)]) translated to ipv4\"...\n\nYou could fix that by doing:\n\nlist(instance.security_groups)\n\nHowever, I\u0027m still not crazy about loading this from the DB if we\u0027re not going to log it - could we check the logging level before doing this, or maybe we just omit the security groups list from the debug message, but it\u0027s probably there because it was useful at one point.\n\nOr we could log the rules list...","commit_id":"a3bb7908532e8a4067d4262a34695ef2a5c87621"},{"author":{"_account_id":6450,"name":"Hans Lindgren","email":"hanlind@kth.se","username":"hanlind"},"change_message_id":"6c09b1c52d9407483ee3480c1692762fa79ee8c7","unresolved":false,"context_lines":[{"line_number":401,"context_line":"        ipv4_rules +\u003d [\u0027-j $sg-fallback\u0027]"},{"line_number":402,"context_line":"        ipv6_rules +\u003d [\u0027-j $sg-fallback\u0027]"},{"line_number":403,"context_line":"        LOG.debug(\u0027Security Groups %s translated to ipv4: %r, ipv6: %r\u0027,"},{"line_number":404,"context_line":"                  instance.security_groups, ipv4_rules, ipv6_rules,"},{"line_number":405,"context_line":"                  instance\u003dinstance)"},{"line_number":406,"context_line":"        return ipv4_rules, ipv6_rules"},{"line_number":407,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a7b0d38_a32657b8","line":404,"in_reply_to":"1a7b0d38_43947c36","updated":"2015-12-23 18:17:15.000000000","message":"Good call. I see this has been broken all along, Previously, security_groups came from L349 and since that too was of type SecurityGroupList, the problem was the same.\n\nDigging into this a bit, the change that added this, did so to replace logging of rules one rule at a time with a summary log. Since the current logging of security groups has never worked I believe we could change this to log a rules list instead.","commit_id":"a3bb7908532e8a4067d4262a34695ef2a5c87621"}]}
