Thanks for advice, but I am using database for main solution (I've writen my module for this issue, which uses rlm_sql functions for sql logic). And I wont to use file-based for redundancy only. So, the main question - what will happens, if query-cache will be less, then ip-range? I have made a simple test, when ip-range is 90 ip-s, and cache is 10. It looks that it works fine.


Quoting Alan DeKok <aland@deployingradius.com>:
Konstantin Chekushin wrote:
> My pool size is 32k. And I'm using this pool only for fallback issue.
> So, I'll need it rarely in the future.

For 32K IP's, I'd suggest using a database.

> If cache-size = 32768, then radiusd process takes all memory.
> "Mon Sep 13 12:33:46 2010 : Error: Couldn't fork: Cannot allocate memory"
> If cache-size = 16384 :
...
> radiusd takes 261m! :-[ ]

That's how in-memory databases work. They use memory.

> So, here is my question. If I'll use default cache-size =800, and at
> some point radius will start using this pool, what will happen if all
> 800 ip-addresses will be taken? Will the system slowdown, or if there
> will be a segmentation fault or something else? Why is "less is very bad"?

If you have 32K IP's, use a database. See the "sqlippool" module.

Alan DeKok.
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html