summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Benton <blak111@gmail.com>2014-10-16 21:21:15 -0700
committerKevin Benton <kevinbenton@buttewifi.com>2014-10-22 09:47:02 +0000
commitc5ae9dd2789570ad0c885aa88ae08e0a24e41d52 (patch)
treeafdbcdfb4617cb86efa937cc10dfc83d0f8aeee1
parent830142e6923ff5fa8303afc22b0b61c39a374fe8 (diff)
downloadneutron-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.py8
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 = {