2010/7/20 Henning Westerholt <henning.westerholt(a)1und1.de>de>:
Hi Elena. This
is also I'm a bit afraid of when using MI command to
manage large ammount of records (LCR, locations, 'address'
entries...).
Wouldn't make sense MI to use shared memory instead of private memory?
Hi Iñaki,
this would be possible, but its IMHO a bit wrong from a conceptional POV. This
FIFO command execution belongs to the MI process, and it should not affect the
working of other process which are busy routing SIP requests - they don't need
to see this as all.
Sure, you are right.
One workaround is as discussed is to just use system
malloc,
It seems a good solution.
another would be to partition the command execution in
small steps
like we do for data loading in several modules.
Yes, but this involves MI process to be designed for that, and it's
not the case, right? This is, in case the retrieved information
exceeds some size it should be automatically partitioned in various
steps which are sent to the MI process one by one.
But as i said earlier, its maybe not the best idea in
general to pipe the
output of several houndred thousands rules through the MI interface,
especially if the information is available more or less similar in the
database.
Sure, but what about when using just memory (as in db_mode=0 for
usrloc)? Also there are other modules (as LCR) which just use the
database to load initial values and later those values or their
attributes are modified in memory (i.e: LCR gateways status).
Regards.
--
Iñaki Baz Castillo
<ibc(a)aliax.net>