Thank you very much for you help.
Actually I need to support Elastic Search Engine (ESE) for a large data
mining project integrated with Kamailio. The easiest way i thought to
achieve that was to use Perl VDB or else i have to write up ESE module for
kamailio myself.
I am going to test the changes you did to PERL VDB module and will fix up
any minor issues to make it working again. Kindly do not remove it from
kamailio repo. I am not expert in Kamailio APIs but have good coding
experience with C / C++, so I am willing to provide maintenance and bug
fixes for the module with your help on API side if needed.
Also, the new DB API for Kamailio, is there any documentation related to it
available online. I want to study it and may be add later on a separate
kamailio module exclusively for ESE for better performance and features
specific to ESE.
Thank you.
On Sat, May 5, 2018 at 9:27 AM, Daniel-Constantin Mierla <miconda(a)gmail.com>
wrote:
Hello,
quite a surprise that someone is trying to use this module, I was
considering to move it to obsolete repo, because nobody used it for so long
and no developer updated it over the time.
The module was still compiling due to some casts, but the DB API was
changed in the past and this module was left behind.
I did the update of the API (still some warnings that needs to be taken
care), so you can try now with master branch. Maybe it goes on pretty well.
Otherwise I do not have to test or maintain the module, if you want to use
it, you have to spend some time with it. I can help fixing bugs when they
are obvious in the C code (like API changes) or a proper report is filled,
but that's all I can do.
Cheers,
Daniel
On 04.05.18 23:37, M S wrote:
Hi,
Seems there are some serious problems with db_perlvdb. It gives
segmentation fault as soon as i set it as db url for any module e.g. acc,
sip_trace, msilo and so on.
Here is back-trace of core dump,
--
#0 0xb57653dd in parseurl (url=0xaf41ba5c "\340\352\245\266\062") at
perlvdbfunc.c:60
cn = 0x1 <Address 0x1 out of bounds>
#1 0xb5765af6 in perlvdb_db_init (url=0xaf41ba5c "\340\352\245\266\062")
at perlvdbfunc.c:123
res = 0x5
cn = 0xaf539cdb "\270"
obj = 0x0
consize = 32
__FUNCTION__ = "perlvdb_db_init"
#2 0xaf3f81c2 in mod_init () at msilo.c:335
avp_spec = {type = PVT_AVP, getf = 0xb5f86c50 <pv_get_avp>, setf =
0xb5f8a8a2 <pv_set_avp>, pvp = {pvn = {type = 0, nfree = 0, u = {
isname = {type = 1, name = {n = -1230637607, s = {s =
0xb6a5f5d9 "msilo_extra_hdrs)", len = 16}, re = 0xb6a5f5d9}},
dname = 0x1}}, pvi = {type = 0, u = {ival = 0, dval =
0x0}}}, trans = 0x0}
__FUNCTION__ = "mod_init"
#3 0x081e6b7c in init_mod (m=0xb6a4d9b0) at core/sr_module.c:972
__FUNCTION__ = "init_mod"
#4 0x081e6e82 in init_modules () at core/sr_module.c:1001
t = 0x544c1e2c
i = -1
__FUNCTION__ = "init_modules"
--
Thank you.
On Fri, May 4, 2018 at 7:29 PM, M S <shaheryarkh(a)gmail.com> wrote:
Hi,
I am trying to load db_perlvdb.so module using latest Kamailio branch
v5.0.6 with git revision 49bd81ad7856dac9b2efd53597fb1c182de7440b on
Debian Wheezy 32bit. The compilation and installation went successful
however the module gives following error.
--
May 4 19:03:59 webrtc[8895]: INFO: app_perl [app_perl_mod.c:351]:
mod_init(): perl interpreter has been initialized (1525453439.237584 =>
1525453439.454432)
May 4 19:03:59 webrtc[8895]: CRITICAL: db_perlvdb [db_perlvdb.c:79]:
mod_init(): perl module not loaded. Exiting.
May 4 19:03:59 webrtc[8895]: ERROR: <core> [core/sr_module.c:970]:
init_mod(): Error while initializing module db_perlvdb
(/usr/local/adx-webrtc/lib/kamailio/modules/db_perlvdb.so)
--
I tried to find module perl.so in modules folder of kamailio installation
but there is none. Then i looked through the source code but no success.
After some googling, i found following link which states that perl.so was
remained to app_perl.so since v4.x.
I have created a small patch for db_perlvdb.c which corrects this error.
--
diff --git a/src/modules/db_perlvdb/db_perlvdb.c
b/src/modules/db_perlvdb/db_perlvdb.c
index 7a2b63e..266ece2 100644
--- a/src/modules/db_perlvdb/db_perlvdb.c
+++ b/src/modules/db_perlvdb/db_perlvdb.c
@@ -75,8 +75,8 @@ struct module_exports exports = {
static int mod_init(void)
{
- if (!module_loaded("perl")) {
- LM_CRIT("perl module not loaded. Exiting.\n");
+ if (!module_loaded("app_perl")) {
+ LM_CRIT("app_perl module not loaded. Exiting.\n");
return -1;
}
--
Kindly update Kamailio master and branch trunks.
Thank you.
_______________________________________________
Kamailio (SER) - Development Mailing
Listsr-dev@lists.kamailio.orghttps://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
--
Daniel-Constantin
Mierlawww.twitter.com/miconda --
www.linkedin.com/in/miconda
Kamailio World Conference - May 14-16, 2018 -
www.kamailioworld.com