diff options
author | Kevin Benton <blak111@gmail.com> | 2014-10-16 21:21:15 -0700 |
---|---|---|
committer | Kevin Benton <kevinbenton@buttewifi.com> | 2014-10-22 09:47:02 +0000 |
commit | c5ae9dd2789570ad0c885aa88ae08e0a24e41d52 (patch) | |
tree | afdbcdfb4617cb86efa937cc10dfc83d0f8aeee1 | |
parent | 830142e6923ff5fa8303afc22b0b61c39a374fe8 (diff) | |
download | neutron-c5ae9dd2789570ad0c885aa88ae08e0a24e41d52.tar.gz |
Only fetch port_id from SG binding table
Change a query to only retrieve the port_id instead of
every column from the row of security group binding info.
Partial-Bug: #1373851
Change-Id: I0fba9c9623898ee52590207ebbb728503bb59a5b
(cherry picked from commit 6acadab5eb8b7b627e097a638d8486bef59a7f30)
-rw-r--r-- | neutron/db/securitygroups_rpc_base.py | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/neutron/db/securitygroups_rpc_base.py b/neutron/db/securitygroups_rpc_base.py index 1dda6bb469..2f6606ad56 100644 --- a/neutron/db/securitygroups_rpc_base.py +++ b/neutron/db/securitygroups_rpc_base.py @@ -153,8 +153,7 @@ class SecurityGroupServerRpcMixin(sg_db.SecurityGroupDbMixin): 'sg_member_ips': {}} rules_in_db = self._select_rules_for_ports(context, ports) remote_security_group_info = {} - for (binding, rule_in_db) in rules_in_db: - port_id = binding['port_id'] + for (port_id, rule_in_db) in rules_in_db: remote_gid = rule_in_db.get('remote_group_id') security_group_id = rule_in_db.get('security_group_id') ethertype = rule_in_db['ethertype'] @@ -219,7 +218,7 @@ class SecurityGroupServerRpcMixin(sg_db.SecurityGroupDbMixin): sgr_sgid = sg_db.SecurityGroupRule.security_group_id - query = context.session.query(sg_db.SecurityGroupPortBinding, + query = context.session.query(sg_binding_port, sg_db.SecurityGroupRule) query = query.join(sg_db.SecurityGroupRule, sgr_sgid == sg_binding_sgid) @@ -417,8 +416,7 @@ class SecurityGroupServerRpcMixin(sg_db.SecurityGroupDbMixin): def security_group_rules_for_ports(self, context, ports): rules_in_db = self._select_rules_for_ports(context, ports) - for (binding, rule_in_db) in rules_in_db: - port_id = binding['port_id'] + for (port_id, rule_in_db) in rules_in_db: port = ports[port_id] direction = rule_in_db['direction'] rule_dict = { |