yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #84909
[Bug 1911462] [NEW] Optimize "PortForwarding" OVO loading
Public bug reported:
In OVO PortForwarding, the synthetic fields 'floating_ip_address' and
'router_id' are retrieved from the floating IP related to this port
forwarding [1].
PortForwarding contains, in the db_obj, the floating IP DB object too.
Instead of retrieving the OVO FloatingIP for each field, the db_obj
should be read instead.
Steps to create a testing environment:
- Enable neutron service "port_forwarding"
- Create a FIP:
$ openstack floating ip create public # in a devstack deployment
- Create 300 PFs:
$ for i in {1..300}; do openstack floating ip port forwarding create --internal-ip-address 10.0.10.19 --port port1 --internal-protocol-port $i --external-protocol-port $i --protocol tcp $fip1; done
Current code:
INFO neutron.wsgi [None req-3aeb3d06-3e7f-44bd-bb86-28af04d75b2e demo admin] 192.168.10.40 "GET /v2.0/floatingips/d3dc3783-701d-4175-827d-545200aafead/port_forwardings HTTP/1.1" status: 200 len: 68923 time: 35.2575612
Retrieving the FIP from the db_obj:
INFO neutron.wsgi [None req-75f538a8-d248-4e05-bb37-c2c1401b4e61 demo admin] 192.168.10.40 "GET /v2.0/floatingips/d3dc3783-701d-4175-827d-545200aafead/port_forwardings HTTP/1.1" status: 200 len: 68923 time: 0.6545706
[1]https://github.com/openstack/neutron/blob/a9fc746249cd34cb7cc594c0b4d74d8ddf65bd46/neutron/objects/port_forwarding.py#L94
** Affects: neutron
Importance: Undecided
Assignee: Rodolfo Alonso (rodolfo-alonso-hernandez)
Status: New
** Description changed:
In OVO PortForwarding, the synthetic fields 'floating_ip_address' and
'router_id' are retrieved from the floating IP related to this port
forwarding [1].
PortForwarding contains, in the db_obj, the floating IP DB object too.
Instead of retrieving the OVO FloatingIP for each field, the db_obj
should be read instead.
+ Steps to create a testing environment:
+ - Enable neutron service "port_forwarding"
+ - Create a FIP:
+ $ openstack floating ip create public # in a devstack deployment
+ - Create 300 PF:
+ $ for i in {1..300}; do openstack floating ip port forwarding create --internal-ip-address 10.0.10.19 --port port1 --internal-protocol-port $i --external-protocol-port $i --protocol tcp $fip1; done
+
+ Current code:
+ INFO neutron.wsgi [None req-3aeb3d06-3e7f-44bd-bb86-28af04d75b2e demo admin] 192.168.10.40 "GET /v2.0/floatingips/d3dc3783-701d-4175-827d-545200aafead/port_forwardings HTTP/1.1" status: 200 len: 68923 time: 35.2575612
+
+ Retrieving the FIP from the db_obj:
+ INFO neutron.wsgi [None req-75f538a8-d248-4e05-bb37-c2c1401b4e61 demo admin] 192.168.10.40 "GET /v2.0/floatingips/d3dc3783-701d-4175-827d-545200aafead/port_forwardings HTTP/1.1" status: 200 len: 68923 time: 0.6545706
+
+
[1]https://github.com/openstack/neutron/blob/a9fc746249cd34cb7cc594c0b4d74d8ddf65bd46/neutron/objects/port_forwarding.py#L94
** Changed in: neutron
Assignee: (unassigned) => Rodolfo Alonso (rodolfo-alonso-hernandez)
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1911462
Title:
Optimize "PortForwarding" OVO loading
Status in neutron:
New
Bug description:
In OVO PortForwarding, the synthetic fields 'floating_ip_address' and
'router_id' are retrieved from the floating IP related to this port
forwarding [1].
PortForwarding contains, in the db_obj, the floating IP DB object too.
Instead of retrieving the OVO FloatingIP for each field, the db_obj
should be read instead.
Steps to create a testing environment:
- Enable neutron service "port_forwarding"
- Create a FIP:
$ openstack floating ip create public # in a devstack deployment
- Create 300 PFs:
$ for i in {1..300}; do openstack floating ip port forwarding create --internal-ip-address 10.0.10.19 --port port1 --internal-protocol-port $i --external-protocol-port $i --protocol tcp $fip1; done
Current code:
INFO neutron.wsgi [None req-3aeb3d06-3e7f-44bd-bb86-28af04d75b2e demo admin] 192.168.10.40 "GET /v2.0/floatingips/d3dc3783-701d-4175-827d-545200aafead/port_forwardings HTTP/1.1" status: 200 len: 68923 time: 35.2575612
Retrieving the FIP from the db_obj:
INFO neutron.wsgi [None req-75f538a8-d248-4e05-bb37-c2c1401b4e61 demo admin] 192.168.10.40 "GET /v2.0/floatingips/d3dc3783-701d-4175-827d-545200aafead/port_forwardings HTTP/1.1" status: 200 len: 68923 time: 0.6545706
[1]https://github.com/openstack/neutron/blob/a9fc746249cd34cb7cc594c0b4d74d8ddf65bd46/neutron/objects/port_forwarding.py#L94
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1911462/+subscriptions
Follow ups