PacketFence - BTS - PacketFence
View Issue Details
0000861PacketFencepublic2009-11-27 17:262011-01-26 15:43
obilodeau 
obilodeau 
normalminorsometimes
closedfixed 
 
 
0000861: pfmon runs out of memory when using a very large trapping.range or registration.range
pfmon has a very inefficient way of caching network ranges for its various operations. This is mostly useful for arp mode, other modes almost never query the cache. Check lib/pf/util.pm's pfmon_preload().

When you have a large network (say a 10.0.0.0/8) pfmon will crash with an Out of Memory! error during its preload stage.

Optimizing the code doesn't seem a good solution. Big networks won't work in arp isolation and in vlan isolation we run a cleanup loop which rarely accesses the cache so it'll fall back on the less efficient isinrange() but thats ok.

So my fix proposal is to disable the caching in vlan isolation mode.
No tags attached.
Issue History
2009-11-27 17:26obilodeauNew Issue
2009-11-27 17:26obilodeauStatusnew => assigned
2009-11-27 17:26obilodeauAssigned To => obilodeau
2009-11-27 18:36obilodeauNote Added: 0001413
2009-11-27 18:36obilodeauStatusassigned => resolved
2009-11-27 18:36obilodeauResolutionopen => fixed
2011-01-26 15:43obilodeauStatusresolved => closed

Notes
(0001413)
obilodeau   
2009-11-27 18:36   
fixed in 1.8 branch at rev: 23cf2ea5ca8ba086402ccde01a2621d18db9bce3
http://mtn.inverse.ca/revision/info/23cf2ea5ca8ba086402ccde01a2621d18db9bce3 [^]
propagated to 1.9