[asterisk-bugs] [JIRA] (ASTERISK-29119) res_odbc: Hang in libodbc when connecting

Asterisk Team (JIRA) noreply at issues.asterisk.org
Wed Nov 4 12:01:15 CST 2020


    [ https://issues.asterisk.org/jira/browse/ASTERISK-29119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=252644#comment-252644 ] 

Asterisk Team commented on ASTERISK-29119:
------------------------------------------

Suspended due to lack of activity. This issue will be automatically re-opened if the reporter posts a comment. If you are not the reporter and would like this re-opened please create a new issue instead. If the new issue is related to this one a link will be created during the triage process. Further information on issue tracker usage can be found in the Asterisk Issue Guidlines [1].

[1] https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines

> res_odbc: Hang in libodbc when connecting
> -----------------------------------------
>
>                 Key: ASTERISK-29119
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-29119
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Resources/res_odbc
>    Affects Versions: 17.5.1
>         Environment: Linux 4.19.0-4-amd64 #1 SMP Debian 4.19.28-2 (2019-03-15) x86_64 GNU/Linux
>            Reporter: Dennis Haney
>            Assignee: Dennis Haney
>            Severity: Minor
>         Attachments: config.rar
>
>
> We recently upgraded our servers and we are now getting hangs in startup of asterisk.
> Stack trace shows that it is stuck in ODBC. It does not happen every time, but about 70% of the time. kill -9 and restarting over and over until success solves the problem
> {noformat}
> Thread 55 (Thread 0x7f6c7146f700 (LWP 24622)):
> #0  0x00007f6c9c80229c in __lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:103
> #1  0x00007f6c9c7fb7d1 in __GI___pthread_mutex_lock (mutex=0x7f6c9d152968 <_rtld_global+2312>) at ../nptl/pthread_mutex_lock.c:115
> #2  0x00007f6c9c813400 in __dlsym (handle=<optimized out>, name=<optimized out>) at dlsym.c:68
> #3  0x00007f6c9962f61c in  () at /lib/x86_64-linux-gnu/libltdl.so.7
> #4  0x00007f6c9962e8c5 in lt_dlsym () at /lib/x86_64-linux-gnu/libltdl.so.7
> #5  0x00007f6c996414a7 in  () at /lib/x86_64-linux-gnu/libodbc.so.2
> #6  0x00007f6c996442b0 in SQLConnect () at /lib/x86_64-linux-gnu/libodbc.so.2
> #7  0x00007f6c9d12416e in odbc_obj_connect (obj=0x7f6c7c007610) at res_odbc.c:1059
> #8  0x00007f6c9d12416e in _ast_odbc_request_obj2 (name=name at entry=0x7f6c7146c3d0 "catsql-sqlserver", flags=..., flags at entry=..., file=file at entry=0x7f6c9d126a40 "res_odbc.c", function=function at entry=0x7f6c9d127030 <__PRETTY_FUNCTION__.17755> "ast_odbc_find_table", lineno=lineno at entry=263) at res_odbc.c:944
> #9  0x00007f6c9d1247df in _ast_odbc_request_obj (name=name at entry=0x7f6c7146c3d0 "catsql-sqlserver", check=check at entry=0, file=file at entry=0x7f6c9d126a40 "res_odbc.c", function=function at entry=0x7f6c9d127030 <__PRETTY_FUNCTION__.17755> "ast_odbc_find_table", lineno=lineno at entry=263) at res_odbc.c:992
> #10 0x00007f6c9d12487a in ast_odbc_find_table (database=database at entry=0x7f6c7146c3d0 "catsql-sqlserver", tablename=tablename at entry=0x7f6c7146c4d0 "Asterisk_Login") at res_odbc.c:263
> #11 0x00007f6c998aaaa2 in update_odbc (database=0x7f6c7146c3d0 "catsql-sqlserver", table=0x7f6c7146c4d0 "Asterisk_Login", keyfield=0x7f6c7bfc2c30 "name", lookup=0x55f3b5e727c0 "mysipprovider-out", fields=0x7f6c7c007540) at res_config_odbc.c:533
> #12 0x000055f3b53f7c0d in ast_update_realtime_fields (family=family at entry=0x7f6c7bfc28c7 "sippeers", keyfield=keyfield at entry=0x7f6c7bfc2c30 "name", lookup=lookup at entry=0x55f3b5e727c0 "mysipprovider-out", fields=0x7f6c7c007540) at config.c:3478
> #13 0x000055f3b53f7d09 in ast_update_realtime (family=0x7f6c7bfc28c7 "sippeers", keyfield=keyfield at entry=0x7f6c7bfc2c30 "name", lookup=lookup at entry=0x55f3b5e727c0 "mysipprovider-out") at config.c:3502
> #14 0x00007f6c7bfa8f96 in handle_response_peerpoke (resp=<optimized out>, req=0x7f6c7146cb90, p=0x7f6c7c003430) at chan_sip.c:25012
> #15 0x00007f6c7bfa8f96 in handle_response (p=p at entry=0x7f6c7c003430, resp=<optimized out>, rest=<optimized out>, req=req at entry=0x7f6c7146e260, seqno=<optimized out>) at chan_sip.c:25265
> #16 0x00007f6c7bfb7990 in handle_incoming (p=0x7f6c7c003430, req=0x7f6c7146e260, addr=0x7f6c7146e1d0, recount=0x7f6c7146e198, nounlock=0x7f6c7146e19c) at chan_sip.c:29183
> #17 0x00007f6c7bfb9538 in handle_request_do (req=req at entry=0x7f6c7146e260, addr=addr at entry=0x7f6c7146e1d0) at chan_sip.c:29493
> #18 0x00007f6c7bfbaef2 in sipsock_read (id=<optimized out>, fd=<optimized out>, events=<optimized out>, ignore=<optimized out>) at chan_sip.c:29424
> #19 0x000055f3b5318dc2 in ast_io_wait (ioc=0x55f3b62a98f0, howlong=<optimized out>) at io.c:297
> #20 0x00007f6c7bf90e29 in do_monitor (data=data at entry=0x0) at chan_sip.c:30071
> #21 0x000055f3b53c5fec in dummy_start (data=<optimized out>) at utils.c:1249
> #22 0x00007f6c9c7f8fa3 in start_thread (arg=<optimized out>) at pthread_create.c:486
> #23 0x00007f6c9c3cf4cf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
> {noformat}
> {noformat}
> Thread 1 (Thread 0x7f6c9a18b780 (LWP 24555)):
> #0  0x00007f6c9c80229c in __lll_lock_wait () at ../sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:103
> #1  0x00007f6c9c7fb7d1 in __GI___pthread_mutex_lock (mutex=mutex at entry=0x55f3b5b35a58) at ../nptl/pthread_mutex_lock.c:115
> #2  0x000055f3b5324678 in __ast_pthread_mutex_lock (filename=filename at entry=0x7f6c9d126a40 "res_odbc.c", lineno=lineno at entry=834, func=func at entry=0x7f6c9d126ed0 <__PRETTY_FUNCTION__.17932> "ast_odbc_release_obj", mutex_name=mutex_name at entry=0x7f6c9d126aec "&class->lock", t=t at entry=0x55f3b5b35a58) at lock.c:326
> #3  0x00007f6c9d123cd4 in ast_odbc_release_obj (obj=obj at entry=0x55f3b5b36230) at res_odbc.c:834
> #4  0x00007f6c9d1248fc in ast_odbc_find_table (database=database at entry=0x7fff5ebc9bb0 "catsql-sqlserver", tablename=tablename at entry=0x7fff5ebc9cb0 "Asterisk_Login") at res_odbc.c:337
> #5  0x00007f6c998a8560 in require_odbc (database=0x7fff5ebc9bb0 "catsql-sqlserver", table=0x7fff5ebc9cb0 "Asterisk_Login", ap=0x7fff5ebc9b98) at res_config_odbc.c:1078
> #6  0x000055f3b53f798c in ast_realtime_require_field (family=0x7f6c7bfc28c7 "sippeers") at config.c:3394
> #7  0x00007f6c7bfbbe77 in load_module () at chan_sip.c:35699
> #8  0x000055f3b5322196 in start_resource (mod=mod at entry=0x55f3b5d815c0) at loader.c:1711
> #9  0x000055f3b5322cf8 in start_resource_attempt (mod=mod at entry=0x55f3b5d815c0, count=count at entry=0x7fff5ebca184) at loader.c:1887
> #10 0x000055f3b5323b0a in start_resource_list (mod_count=0x7fff5ebca184, resources=0x7fff5ebca1a0) at loader.c:1984
> #11 0x000055f3b5323b0a in load_resource_list (load_order=0x7fff5ebca190, load_order=0x7fff5ebca190, mod_count=<synthetic pointer>) at loader.c:2166
> #12 0x000055f3b5323b0a in load_modules () at loader.c:2379
> #13 0x000055f3b525e266 in asterisk_daemon (isroot=<optimized out>, rungroup=<optimized out>, runuser=<optimized out>) at asterisk.c:4155
> #14 0x000055f3b525e266 in main (argc=<optimized out>, argv=<optimized out>) at asterisk.c:3923
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list