Slow deletion of high number of static routes on router with ML2/OVN
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Fix Released
|
Medium
|
Ihtisham ul Haq |
Bug Description
With ML2/OVN if one create about 1000 of static routes on a router, the addition takes <5 seconds but deletion of those static routes takes about >90 seconds.
That is because neutron sends a separate deletion command to OVN for each of the static route, which is very inefficient, instead of doing it in a single transaction.
Neutron version: latest/main branch
Deployment tool: devstack
Steps to reproduce:
$ openstack network create static_route_test
$ subnet create static_route_test --subnet-range 10.0.0.0/20 --network static_route_test
$ openstack router create static_route_test
$ openstack route add subnet static_route_test static_route_test
# 1000 static routes
$ for byte2 in {0..3}; do for byte3 in {0..249}; do echo "{\"destination\": \"192.$
## Addition
$ time curl -g -i -X PUT http://
Response time: 0m4.883s
## Deletion
$ time curl -g -i -X PUT http://
Response time: 1m36.843s
# 2000 static routes
$ for byte2 in {0..7}; do for byte3 in {0..249}; do echo "{\"destination\": \"192.$
## Addition
$ time curl -g -i -X PUT http://
Response time: 0m6.443s
## Deletion
$ time curl -g -i -X PUT http://
Response time: 6m32.338s
description: | updated |
Changed in neutron: | |
assignee: | nobody → Ihtisham ul Haq (iulhaq) |
Changed in neutron: | |
importance: | Undecided → Medium |
description: | updated |
Fix proposed to branch: master /review. opendev. org/c/openstack /neutron/ +/914900
Review: https:/