FloatingIP list bad performance
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Invalid
|
High
|
Oleg Bondarev |
Bug Description
Faced on stable/queens but applicable to master too.
On quite a heavy loaded environment it was noticed that simple floatingip list command takes significant time (~1200 fips) while for example port list is always faster (>7000 ports).
If enable sqlalchemy debug logs there can be seen lots of:
2019-10-22 21:02:44,977.977 23957 DEBUG sqlalchemy.
b5414b9e29cf581
(<Mapper at 0x7f1a3f064ed0; FloatingIPDNS>,))' to '{}' set /usr/lib/
py:63
- which basically eats all the time of a request.
As a test I commented 'dns' field in FloatingIP DB object definition and response time reduced from 14 to 1 second. DNS extension is not configured on the environment and no external DNS is used.
Also I don't see this field used anywhere in neutron.
Interestingly Port DB object has 'dns' field either (with corresponding portdnses table in DB, all the same as done for floatingips), however DB object is not used when listing ports.
The proposal would be to remove 'dns' field from FloatingIP OVO as not used, until we find performance bottleneck.
tags: | added: loadi |
tags: |
added: loadimpact removed: loadi |
Fix proposed to branch: master /review. opendev. org/692280
Review: https:/