Migrating to threaded rlm_perl

Energ ponch at ponch.ru
Wed Jun 22 12:57:12 CEST 2011


Seems like BEGIN{} block did the trick. Thanks, Alexander.
I also moved from IPC to SQLite.

But now i am faced with another problem - memory leak.

For about an hour of uptime i get this:

5575 radius   2874M 2870M sleep   59    0   0:01:25 1.2% radiusd/9

and it countinues to grow.

thread pool:
start_servers = 5
max_servers = 32
min_spare_servers = 3
max_spare_servers = 20
max_requests_per_server = 300

perl threads:
max_clones = 30
start_clones = 5
min_spare_clones = 2
max_spare_clones = 64
cleanup_delay = 1
max_request_per_clone = 100

what can cause such behaviour?

radiusd -v
radiusd: FreeRADIUS Version 2.1.11, for host sparc-sun-solaris2.10,
built on Jun 20 2011 at 16:16:34

Thanks!

В Mon, 20 Jun 2011 19:15:49 +0100
Alexander Clouter <alex at digriz.org.uk> пишет:

> Energ <ponch at ponch.ru> wrote:
> > 
> > But, would it make any difference by using BEGIN{} block for
> > creating shared memory segment? Wont threaded rlm_perl process this
> > section in every thread it starts?
> > 
> Threaded to FreeRADIUS means those methods you define are reentrant.  
> IIRC BEGIN{} is called only when rlm_perl fires up, afterwards your 
> methods are called whenever required, pre-emptively.
> 
> Cheers
> 




More information about the Freeradius-Users mailing list