Re: [OpenSIPS-Users] openSIPS 1.6.4 crash on opensipsctl
Thanks for the reply, we are planning to upgrade soon but need to port our configuration across as there are some changes that need lots of testing and our config is a little complicated. thanks again, Mark On 02/11/12 17:30, Bogdan-Andrei Iancu wrote: Hi Mark, Thanks for update. Please note that ver 1.6 is no longer maintained. Stable active versions are 1.7 and 1.8 . I strongly suggest you to upgrade. Regards, Bogdan Sent from Samsung Mobile Mark Carbonaro m...@iovox.com wrote: On 02/11/12 13:23, Mark Carbonaro wrote: Hi all, In the last few weeks we have started having an issue with opensips where if we issue the command opensipsctl fifo lb_list opensips just crashes, syslog shows the following: Nov 2 02:19:48 ukld5p5001 kernel: opensips[43169]: segfault at 8 ip 7f37deaa9161 sp 7fff707a9580 error 4 in load_balancer.so[7f37deaa1000+b000] Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43180]: CRITICAL:core:receive_fd: EOF on 7 Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:core:handle_sigs: child process 43169 exited by a signal 11 Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:core:handle_sigs: core was generated Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:core:handle_sigs: terminating due to SIGCHLD Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43179]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43178]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43175]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43174]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43176]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43173]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43171]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43172]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43170]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43180]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43177]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:db_mysql:re_init_statement: query is update dialog set state=?,timeout=?,caller_cseq=?,callee_cseq=?,vars=?,profiles=?,script_flags=? where hash_entry=? AND hash_id=?, ptr=(nil) The strange thing is one server works, the other two don't (they crash as above) and they are all using the same database for the load balance table. We haven't change the configuration on these servers, they just started having issues out of the blue. Is anyone able to assist me in finding the source of the issue. Regards, Mark ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users Hi again, I compile from the latest revision of the 1.6 branch and the problem appears to be resolved. Thanks, Mark ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
[OpenSIPS-Users] openSIPS 1.6.4 crash on opensipsctl
Hi all, In the last few weeks we have started having an issue with opensips where if we issue the command opensipsctl fifo lb_list opensips just crashes, syslog shows the following: Nov 2 02:19:48 ukld5p5001 kernel: opensips[43169]: segfault at 8 ip 7f37deaa9161 sp 7fff707a9580 error 4 in load_balancer.so[7f37deaa1000+b000] Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43180]: CRITICAL:core:receive_fd: EOF on 7 Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:core:handle_sigs: child process 43169 exited by a signal 11 Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:core:handle_sigs: core was generated Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:core:handle_sigs: terminating due to SIGCHLD Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43179]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43178]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43175]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43174]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43176]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43173]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43171]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43172]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43170]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43180]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43177]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:db_mysql:re_init_statement: query is update dialog set state=?,timeout=?,caller_cseq=?,callee_cseq=?,vars=?,profiles=?,script_flags=? where hash_entry=? AND hash_id=?, ptr=(nil) The strange thing is one server works, the other two don't (they crash as above) and they are all using the same database for the load balance table. We haven't change the configuration on these servers, they just started having issues out of the blue. Is anyone able to assist me in finding the source of the issue. Regards, Mark ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] openSIPS 1.6.4 crash on opensipsctl
On 02/11/12 13:23, Mark Carbonaro wrote: Hi all, In the last few weeks we have started having an issue with opensips where if we issue the command opensipsctl fifo lb_list opensips just crashes, syslog shows the following: Nov 2 02:19:48 ukld5p5001 kernel: opensips[43169]: segfault at 8 ip 7f37deaa9161 sp 7fff707a9580 error 4 in load_balancer.so[7f37deaa1000+b000] Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43180]: CRITICAL:core:receive_fd: EOF on 7 Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:core:handle_sigs: child process 43169 exited by a signal 11 Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:core:handle_sigs: core was generated Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:core:handle_sigs: terminating due to SIGCHLD Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43179]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43178]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43175]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43174]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43176]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43173]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43171]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43172]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43170]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43180]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43177]: INFO:core:sig_usr: signal 15 received Nov 2 02:19:49 ukld5p5001 /usr/sbin/opensips[43167]: INFO:db_mysql:re_init_statement: query is update dialog set state=?,timeout=?,caller_cseq=?,callee_cseq=?,vars=?,profiles=?,script_flags=? where hash_entry=? AND hash_id=?, ptr=(nil) The strange thing is one server works, the other two don't (they crash as above) and they are all using the same database for the load balance table. We haven't change the configuration on these servers, they just started having issues out of the blue. Is anyone able to assist me in finding the source of the issue. Regards, Mark ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users Hi again, I compile from the latest revision of the 1.6 branch and the problem appears to be resolved. Thanks, Mark ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] db_mysql segfault
Thanks, I'll look into the mysql library and see what I can find. Mark On 03/29/11 22:22, Vlad Paiu wrote: Hi, Just took a look at the code and it seems to be a problem somehow related with the mysql library on your machine. At startup, OpenSIPS tries to fetch all dialog info from DB, and it first gets the column names and column types from the dialog table. It seems that in your case, the mysql library can only succesfully fetch the first column name ( hash_entry ), and then returns NULL for the second column name, which causes OpenSIPS to crash, because the case where a column name is NULL is bogus and should never happen. Could you maybe try to reinstall your mysql library or double check the fact that are no related problems to it ? Regards, -- Vlad Paiu OpenSIPS Developer On 03/29/2011 12:53 PM, Mark Carbonaro wrote: Hi Vlad, Thanks for the reply, below is the output of bt full. Mark #0 0x7fb9cd8cde57 in db_mysql_get_columns (_h=value optimized out, _r=0x796490) at res.c:71 col = 1 fields = value optimized out __FUNCTION__ = db_mysql_get_columns #1 0x7fb9cd8c7e36 in db_mysql_fetch_result (_h=0x7962c8, _r=0x7fff2a4a3e68, nrows=128) at dbase.c:849 rows = value optimized out i = value optimized out __FUNCTION__ = db_mysql_fetch_result #2 0x7fb9cbf94889 in select_entire_dialog_table ( dlg_hash_size=value optimized out) at dlg_db_handler.c:232 __FUNCTION__ = select_entire_dialog_table #3 load_dialog_info_from_db (dlg_hash_size=value optimized out) at dlg_db_handler.c:385 res = 0x796490 values = value optimized out rows = value optimized out i = value optimized out nr_rows = value optimized out dlg = value optimized out callid = {s = 0x3c Address 0x3c out of bounds, len = -870573728} from_uri = {s = 0xb Address 0xb out of bounds, len = 5153101} ---Type return to continue, or q return to quit--- to_uri = {s = 0x1000 Address 0x1000 out of bounds, len = 1} from_tag = {s = 0x4 Address 0x4 out of bounds, len = -870574432} to_tag = {s = 0x7fb9cc1c1960 \264S\005\315\271\177, len = -870574432} cseq1 = {s = 0x7fff2a4a3dc0 \270*S, len = -846407113} cseq2 = {s = 0x7fff2a4a3db0 \303*S, len = -870577568} contact1 = {s = 0x7962c8 \240\026\034??\177, len = 7955600} contact2 = {s = 0x532ac9 version, len = 7} rroute1 = {s = 0x532ab8 table_name, len = 10} rroute2 = {s = 0x532ac3 table_version, len = 13} next_id = value optimized out __FUNCTION__ = load_dialog_info_from_db #4 0x7fb9cbf961a8 in init_dlg_db (db_url=value optimized out, dlg_hash_size=4096, db_update_period=60) at dlg_db_handler.c:182 __FUNCTION__ = init_dlg_db #5 0x7fb9cbf9046e in mod_init () at dialog.c:696 __FUNCTION__ = mod_init #6 0x0047b242 in init_mod (m=0x797788) at sr_module.c:457 __FUNCTION__ = init_mod #7 0x0047b1bf in init_mod (m=0x797ac8) at sr_module.c:452 __FUNCTION__ = init_mod #8 0x0047b1bf in init_mod (m=0x797b98) at sr_module.c:452 __FUNCTION__ = init_mod #9 0x0042b0c1 in main (argc=value optimized out, ---Type return to continue, or q return to quit--- argv=0x7fff2a4a4168) at main.c:1356 cfg_log_stderr = 0 cfg_stream = 0x1a09010 c = value optimized out r = value optimized out tmp = 0x50bd87 H\215\005.\365# tmp_len = value optimized out port = value optimized out proto = value optimized out ret = value optimized out seed = 4201309582 rfd = value optimized out __FUNCTION__ = main On 03/29/11 20:39, Vlad Paiu wrote: Hello Mark, If you still have the core dump, could you please do gdb /path_to_opensips_binary path_to_core_file /and reply with the output of bt full Thanks. Regards, -- Vlad Paiu OpenSIPS Developer ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users
Re: [OpenSIPS-Users] db_mysql segfault
Hi Vlad, Thanks again for looking into this issue, you were spot on the mysql library was different on each server and it came down to the order in which the packages were installed. Just in case anyone else has this issue you need to installed mysql-devel last, due to an issue with error message files I reinstalled mysql-libs and mysql again. When I did this it was the source of the issue as it over wrote libmysqlclient. So by reinstall mysql-devel and recompiling everything (a re-compile was required) it now works correctly. Regards, Mark On 03/30/11 20:22, Mark Carbonaro wrote: Thanks, I'll look into the mysql library and see what I can find. Mark On 03/29/11 22:22, Vlad Paiu wrote: Hi, Just took a look at the code and it seems to be a problem somehow related with the mysql library on your machine. At startup, OpenSIPS tries to fetch all dialog info from DB, and it first gets the column names and column types from the dialog table. It seems that in your case, the mysql library can only succesfully fetch the first column name ( hash_entry ), and then returns NULL for the second column name, which causes OpenSIPS to crash, because the case where a column name is NULL is bogus and should never happen. Could you maybe try to reinstall your mysql library or double check the fact that are no related problems to it ? Regards, -- Vlad Paiu OpenSIPS Developer On 03/29/2011 12:53 PM, Mark Carbonaro wrote: Hi Vlad, Thanks for the reply, below is the output of bt full. Mark #0 0x7fb9cd8cde57 in db_mysql_get_columns (_h=value optimized out, _r=0x796490) at res.c:71 col = 1 fields = value optimized out __FUNCTION__ = db_mysql_get_columns #1 0x7fb9cd8c7e36 in db_mysql_fetch_result (_h=0x7962c8, _r=0x7fff2a4a3e68, nrows=128) at dbase.c:849 rows = value optimized out i = value optimized out __FUNCTION__ = db_mysql_fetch_result #2 0x7fb9cbf94889 in select_entire_dialog_table ( dlg_hash_size=value optimized out) at dlg_db_handler.c:232 __FUNCTION__ = select_entire_dialog_table #3 load_dialog_info_from_db (dlg_hash_size=value optimized out) at dlg_db_handler.c:385 res = 0x796490 values = value optimized out rows = value optimized out i = value optimized out nr_rows = value optimized out dlg = value optimized out callid = {s = 0x3c Address 0x3c out of bounds, len = -870573728} from_uri = {s = 0xb Address 0xb out of bounds, len = 5153101} ---Type return to continue, or q return to quit--- to_uri = {s = 0x1000 Address 0x1000 out of bounds, len = 1} from_tag = {s = 0x4 Address 0x4 out of bounds, len = -870574432} to_tag = {s = 0x7fb9cc1c1960 \264S\005\315\271\177, len = -870574432} cseq1 = {s = 0x7fff2a4a3dc0 \270*S, len = -846407113} cseq2 = {s = 0x7fff2a4a3db0 \303*S, len = -870577568} contact1 = {s = 0x7962c8 \240\026\034??\177, len = 7955600} contact2 = {s = 0x532ac9 version, len = 7} rroute1 = {s = 0x532ab8 table_name, len = 10} rroute2 = {s = 0x532ac3 table_version, len = 13} next_id = value optimized out __FUNCTION__ = load_dialog_info_from_db #4 0x7fb9cbf961a8 in init_dlg_db (db_url=value optimized out, dlg_hash_size=4096, db_update_period=60) at dlg_db_handler.c:182 __FUNCTION__ = init_dlg_db #5 0x7fb9cbf9046e in mod_init () at dialog.c:696 __FUNCTION__ = mod_init #6 0x0047b242 in init_mod (m=0x797788) at sr_module.c:457 __FUNCTION__ = init_mod #7 0x0047b1bf in init_mod (m=0x797ac8) at sr_module.c:452 __FUNCTION__ = init_mod #8 0x0047b1bf in init_mod (m=0x797b98) at sr_module.c:452 __FUNCTION__ = init_mod #9 0x0042b0c1 in main (argc=value optimized out, ---Type return to continue, or q return to quit--- argv=0x7fff2a4a4168) at main.c:1356 cfg_log_stderr = 0 cfg_stream = 0x1a09010 c = value optimized out r = value optimized out tmp = 0x50bd87 H\215\005.\365# tmp_len = value optimized out port = value optimized out proto = value optimized out ret = value optimized out seed = 4201309582 rfd = value optimized out __FUNCTION__ = main On 03/29/11 20:39, Vlad Paiu wrote: Hello Mark, If you still have the core dump, could you please do gdb /path_to_opensips_binary path_to_core_file /and reply with the output of bt full Thanks. Regards, -- Vlad Paiu OpenSIPS Developer ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users ___ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users ___ Users mailing list Users
Re: [OpenSIPS-Users] db_mysql segfault
Hi Vlad, Thanks for the reply, below is the output of bt full. Mark #0 0x7fb9cd8cde57 in db_mysql_get_columns (_h=value optimized out, _r=0x796490) at res.c:71 col = 1 fields = value optimized out __FUNCTION__ = db_mysql_get_columns #1 0x7fb9cd8c7e36 in db_mysql_fetch_result (_h=0x7962c8, _r=0x7fff2a4a3e68, nrows=128) at dbase.c:849 rows = value optimized out i = value optimized out __FUNCTION__ = db_mysql_fetch_result #2 0x7fb9cbf94889 in select_entire_dialog_table ( dlg_hash_size=value optimized out) at dlg_db_handler.c:232 __FUNCTION__ = select_entire_dialog_table #3 load_dialog_info_from_db (dlg_hash_size=value optimized out) at dlg_db_handler.c:385 res = 0x796490 values = value optimized out rows = value optimized out i = value optimized out nr_rows = value optimized out dlg = value optimized out callid = {s = 0x3c Address 0x3c out of bounds, len = -870573728} from_uri = {s = 0xb Address 0xb out of bounds, len = 5153101} ---Type return to continue, or q return to quit--- to_uri = {s = 0x1000 Address 0x1000 out of bounds, len = 1} from_tag = {s = 0x4 Address 0x4 out of bounds, len = -870574432} to_tag = {s = 0x7fb9cc1c1960 \264S\005\315\271\177, len = -870574432} cseq1 = {s = 0x7fff2a4a3dc0 \270*S, len = -846407113} cseq2 = {s = 0x7fff2a4a3db0 \303*S, len = -870577568} contact1 = {s = 0x7962c8 \240\026\034??\177, len = 7955600} contact2 = {s = 0x532ac9 version, len = 7} rroute1 = {s = 0x532ab8 table_name, len = 10} rroute2 = {s = 0x532ac3 table_version, len = 13} next_id = value optimized out __FUNCTION__ = load_dialog_info_from_db #4 0x7fb9cbf961a8 in init_dlg_db (db_url=value optimized out, dlg_hash_size=4096, db_update_period=60) at dlg_db_handler.c:182 __FUNCTION__ = init_dlg_db #5 0x7fb9cbf9046e in mod_init () at dialog.c:696 __FUNCTION__ = mod_init #6 0x0047b242 in init_mod (m=0x797788) at sr_module.c:457 __FUNCTION__ = init_mod #7 0x0047b1bf in init_mod (m=0x797ac8) at sr_module.c:452 __FUNCTION__ = init_mod #8 0x0047b1bf in init_mod (m=0x797b98) at sr_module.c:452 __FUNCTION__ = init_mod #9 0x0042b0c1 in main (argc=value optimized out, ---Type return to continue, or q return to quit--- argv=0x7fff2a4a4168) at main.c:1356 cfg_log_stderr = 0 cfg_stream = 0x1a09010 c = value optimized out r = value optimized out tmp = 0x50bd87 H\215\005.\365# tmp_len = value optimized out port = value optimized out proto = value optimized out ret = value optimized out seed = 4201309582 rfd = value optimized out __FUNCTION__ = main On 03/29/11 20:39, Vlad Paiu wrote: Hello Mark, If you still have the core dump, could you please do gdb /path_to_opensips_binary path_to_core_file /and reply with the output of bt full Thanks. Regards, -- Vlad Paiu OpenSIPS Developer On 03/29/2011 02:44 AM, Mark Carbonaro wrote: Hi, I have an issue when when starting opensips where it immediately segfaults in db_mysql.so. This happens with in Centos 5.5 (plus all patches) when running VirtualBox and on a Rackspace cloud server, but works fine on an Amazon EC2 server setup in the same way (same config file, patches, package versions etc), which I find a little odd. I was originally running off the opensips-1.6.4-2-tls_src.tar.gz tar ball, but due to this issue I thought I would change to the latest revision of the 1.6 branch in subversion, but the problem remained. I build using the following command make include_modules=db_mysql all. This config is setup just as a load balancer and does work on one server, just segfaults on others. Please let me know if you need any more information. Any help would be greatly appreciated Regards, Mark Here is the output from syslog when opensips starts with debug=3: Mar 28 23:33:18 server opensips: INFO:core:init_tcp: using epoll_lt as the TCP io watch method (auto detected) Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: NOTICE:core:main: version: opensips 1.6.4-2-notls (x86_64/linux) Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:core:main: using 32 Mb shared memory Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:core:main: using 1 Mb private memory per process Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: NOTICE:signaling:mod_init: initializing module ... Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:sl:mod_init: Initializing StateLess engine Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:tm:mod_init: TM - initializing... Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:rr:mod_init: rr - initializing Mar 28 23:33:18 server /usr/local/sbin
[OpenSIPS-Users] db_mysql segfault
Hi, I have an issue when when starting opensips where it immediately segfaults in db_mysql.so. This happens with in Centos 5.5 (plus all patches) when running VirtualBox and on a Rackspace cloud server, but works fine on an Amazon EC2 server setup in the same way (same config file, patches, package versions etc), which I find a little odd. I was originally running off the opensips-1.6.4-2-tls_src.tar.gz tar ball, but due to this issue I thought I would change to the latest revision of the 1.6 branch in subversion, but the problem remained. I build using the following command make include_modules=db_mysql all. This config is setup just as a load balancer and does work on one server, just segfaults on others. Please let me know if you need any more information. Any help would be greatly appreciated Regards, Mark Here is the output from syslog when opensips starts with debug=3: Mar 28 23:33:18 server opensips: INFO:core:init_tcp: using epoll_lt as the TCP io watch method (auto detected) Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: NOTICE:core:main: version: opensips 1.6.4-2-notls (x86_64/linux) Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:core:main: using 32 Mb shared memory Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:core:main: using 1 Mb private memory per process Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: NOTICE:signaling:mod_init: initializing module ... Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:sl:mod_init: Initializing StateLess engine Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:tm:mod_init: TM - initializing... Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:rr:mod_init: rr - initializing Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:maxfwd:mod_init: initializing... Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:usrloc:ul_init_locks: locks array size 512 Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:registrar:mod_init: initializing... Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:textops:mod_init: initializing... Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:acc:mod_init: initializing... Mar 28 23:33:18 server /usr/local/sbin/opensips[27923]: INFO:dialog:mod_init: Dialog module - initializing Mar 28 23:33:18 server kernel: [38083.726989] opensips[27923]: segfault at 0 ip 7f0c1167ee57 sp 7fffd03f7050 error 4 in db_mysql.so[7f0c11676000+e000] And just in case it helps with debug=6 (just the last part): Mar 28 23:35:39 [27944] DBG:db_mysql:db_mysql_connect: opening connection: mysql://:@localhost/opensips Mar 28 23:35:39 [27944] DBG:db_mysql:db_mysql_connect: connection type is Localhost via UNIX socket Mar 28 23:35:39 [27944] DBG:db_mysql:db_mysql_connect: protocol version is 10 Mar 28 23:35:39 [27944] DBG:db_mysql:db_mysql_connect: server version is 5.1.56 Mar 28 23:35:39 [27944] DBG:core:db_do_init: connection 0x796340 inserted in pool as 0x796430 Mar 28 23:35:39 [27944] DBG:core:db_new_result: allocate 48 bytes for result set at 0x796490 Mar 28 23:35:39 [27944] DBG:db_mysql:db_mysql_get_columns: 1 columns returned from the query Mar 28 23:35:39 [27944] DBG:core:db_allocate_columns: allocate 28 bytes for result columns at 0x7964d8 Mar 28 23:35:39 [27944] DBG:db_mysql:db_mysql_get_columns: RES_NAMES(0x7964e0)[0]=[table_version] Mar 28 23:35:39 [27944] DBG:db_mysql:db_mysql_get_columns: use DB_INT result type Mar 28 23:35:39 [27944] DBG:core:db_allocate_rows: allocate 48 bytes for result rows and values at 0x796510 Mar 28 23:35:39 [27944] DBG:db_mysql:db_mysql_str2val: converting INT [4] Mar 28 23:35:39 [27944] DBG:core:db_free_columns: freeing result columns at 0x7964d8 Mar 28 23:35:39 [27944] DBG:core:db_free_rows: freeing 1 rows Mar 28 23:35:39 [27944] DBG:core:db_free_row: freeing row values at 0x796520 Mar 28 23:35:39 [27944] DBG:core:db_free_rows: freeing rows at 0x796510 Mar 28 23:35:39 [27944] DBG:core:db_free_result: freeing result set at 0x796490 Mar 28 23:35:39 [27944] DBG:core:db_new_result: allocate 48 bytes for result set at 0x796490 Mar 28 23:35:39 [27944] DBG:db_mysql:db_mysql_get_columns: 21 columns returned from the query Mar 28 23:35:39 [27944] DBG:core:db_allocate_columns: allocate 588 bytes for result columns at 0x79e448 Mar 28 23:35:39 [27944] DBG:db_mysql:db_mysql_get_columns: RES_NAMES(0x79e4f0)[0]=[hash_entry] Mar 28 23:35:39 [27944] DBG:db_mysql:db_mysql_get_columns: use DB_INT result type Segmentation fault (core dumped) Finally here is my config down to the route section, this is the same config that works on the EC2 server. debug=3 log_stderror=no log_facility=LOG_LOCAL0 fork=yes children=4 port=5060 mpath=/usr/local/lib64/opensips/modules/ loadmodule db_mysql.so loadmodule signaling.so loadmodule sl.so loadmodule tm.so loadmodule rr.so loadmodule maxfwd.so loadmodule usrloc.so loadmodule registrar.so loadmodule