Bug #6400

assign_interfaces.php issues with large numbers of interfaces

Added by wot wot over 1 year ago. Updated about 1 month ago.

Target version:
Start date:
Due date:
% Done:


Affected Version:
Affected Architecture:


On a firewall running 2.3.1, after creating ~200 vlans, assign_interfaces.php gets very slow while taking 100% cpu. when selecting "assign interfaces" in the cli/console, a lot of "broken pipe" errors turn up before the usual config dialog begins.

I can help with debugging, the box in question however is in production.

1000-interface-config.xml Magnifier (230 KB) Chris Buechler, 07/11/2016 09:18 PM

config-sanitized.xml Magnifier (110 KB) Clinton Cory, 04/26/2017 01:43 PM


#1 Updated by Luiz Souza over 1 year ago

  • Assignee set to Luiz Souza

#2 Updated by Gareth Hay over 1 year ago

We have been doing some testing on one of our sites.

Under 2.2.4 no issue with 100 vlans, under 2.3.1-RELEASE-p5 at 40 vlans it takes around 27 seconds to open the page on our boxes and it is noticibly slower as you add vlans one by one.

At 100 vlans we get a 504 Gateway time out.

nginx: 2016/06/23 12:08:23 [error] 17180#0: *134 upstream timed out (60: Operation timed out) while reading response header from upstream, client: X.X.X.X, server: , request: "GET /interfaces_assign.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fpm.socket", host: "X.X.X.X", referrer: "https://X.X.X.X/".

This also happens under the i386 architecture.

Think this is the same as Bug #6520

#3 Updated by Phillip Davis over 1 year ago

Maybe this is somehow related to
When submitting a change in interfaces_assign, interface_configure() is called, and that calls link_interface_to_vips() - the performance of which is improved by the change for 6515, in commit
It seems to me it would only help in a situation where there are a number of VIPs on the system, as well as a bunch of interfaces. So I am not sure that it is related, but would be worth applying the changes in that commit and see if anything improves.

#4 Updated by Chris Buechler over 1 year ago

  • File 1000-interface-config.xmlMagnifier added
  • Subject changed from assign_interfaces throws "broken pipe" errors to assign_interfaces.php issues with large numbers of interfaces
  • Status changed from New to Confirmed
  • Target version changed from 2.3.2 to 2.4.0
  • Affected Version changed from 2.3 to 2.3.x
  • Affected Architecture changed from amd64 to All

Not seeing any issues with 200 assigned interfaces (somewhat slower than 2.2.x, but still usable), but take it up to 1000 and assign_interfaces.php is non-functional. 504 timeout

example config attached.

2.3.2 is too near-term for significant changes, historically things along these lines have lead to regressions for the 99.99999% in interest of fixing the 0.00001%, so pushing this to 2.4.0.

#5 Updated by Clinton Cory 9 months ago

I'm seeing the same issue with a little over 200 VLAN interfaces on 2.3.3. Attached is the config I used.

#6 Updated by Jonas Dreher 8 months ago

I'm having the same issue with about 230 VLAN interfaces on 2.3.3.
Assign_Interfaces.php ist not usable and all configurations have to be done via console.

#7 Updated by Jim Pingle 6 months ago

See also: #7726

#8 Updated by Luiz Souza 5 months ago

  • Target version changed from 2.4.0 to 2.4.1

#9 Updated by Jim Pingle 3 months ago

  • Target version changed from 2.4.1 to 2.4.2

#10 Updated by Jim Pingle 3 months ago

  • Target version changed from 2.4.2 to 2.4.3

#12 Updated by Peter Schofield about 2 months ago

I have submitted a pull request that addresses this, waiting on pfSense devs now.

#13 Updated by Jim Pingle about 1 month ago

  • Status changed from Confirmed to Feedback
  • % Done changed from 0 to 100

Also available in: Atom PDF