[Home]

Summary:ASTERISK-25106: Segmentation fault in ast_variable_new when using app_voicemail with realtime
Reporter:Dmitriy Serov (Demon)Labels:
Date Opened:2015-05-20 00:13:55Date Closed:2020-01-15 15:51:55.000-0600
Priority:MajorRegression?Yes
Status:Closed/CompleteComponents:Applications/app_voicemail
Versions:13.3.2 Frequency of
Occurrence
Frequent
Related
Issues:
duplicatesASTERISK-23739 [patch]Segfault forwarding voicemail with ODBC storage enabled and realtime voicemail_data is used
Environment:Linux 3.13.6 #4 SMP Wed Aug 20 17:52:10 MSK 2014 x86_64 Intel(R) Core(TM) i5-2310 CPU @ 2.90GHz GenuineIntel GNU/Linux mysql Ver 15.1 Distrib 5.5.37-MariaDB, for Linux (x86_64) using readline 5.1 asterisk using res_config_mysql.so, no odbc.Attachments:( 0) 2016_01_11__09_52_07.backtrace-threads.txt
( 1) asterisk.sql
( 2) backtrace.txt
( 3) debug.txt
( 4) extconfig.conf
( 5) res_config_mysql.conf
( 6) voicemail_data.sql.txt
( 7) voicemail.conf
Description:Very often it happens Segfault when checking Voicemail.
Used Realtime and mariadb tables.
In Asterisk11 this was not happend and it seems that it has brought to Asterisk13 with some revisions
Comments:By: Dmitriy Serov (Demon) 2015-05-20 00:18:14.878-0500

Backtrace of segfault

By: Rusty Newton (rnewton) 2015-05-20 17:04:50.107-0500

We require additional debug to continue with triage of your issue. Please follow the instructions on the wiki [1] for how to collect debugging information from Asterisk. For expediency, where possible, attach the debug with a '.txt' file extension so that the debug will be usable for further analysis.

Thanks!

[1] https://wiki.asterisk.org/wiki/display/AST/Collecting+Debug+Information


Can you provide a description of how to reproduce the issue in addition to a debug log captured during an occurrence?

In your description pleases provide the steps to reproduce and show the dialplan needed.

Thanks!

By: Rusty Newton (rnewton) 2015-05-20 17:05:11.852-0500

Use "Send Back" or "Enter Feedback" to send the issue back to us.

By: Dmitriy Serov (Demon) 2015-05-21 08:06:45.811-0500

debug log before segfault

segfault always after:
res_config_mysql.c: MySQL RealTime: Retrieve SQL: SELECT * FROM voicemail_data WHERE filename = '/var/spool/asterisk/voicemail/local/5312/INBOX/msg0000'

By: Rusty Newton (rnewton) 2015-06-01 18:41:40.829-0500

Can you add to the environment field your library and backend versions? ODBC, MariaDB, etc?

Please also attach your extconfig.conf, voicemail.conf, extensions.conf, etc. Any configuration relevant for reproduction.

By: Rusty Newton (rnewton) 2015-06-16 16:37:37.222-0500

[~Demon] we haven't heard from you since the 1st. Can you still reproduce this issue and are you able to provide the debug requested?

By: Dmitriy Serov (Demon) 2015-06-17 01:05:53.475-0500

using res_config_mysql, no odbc.

By: Rusty Newton (rnewton) 2015-06-25 08:17:55.426-0500

Are you able to reproduce the issue with a core supported module, for example res_config_odbc?

By: Asterisk Team (asteriskteam) 2015-07-09 12:00:19.470-0500

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

By: Dmitriy Serov (Demon) 2016-01-11 01:14:49.231-0600

Backtrace file with SegFault attached: 2016_01_11__09_52_07.backtrace-threads.txt
SQL structure file attached: voicemail_data.sql.txt

Where is some problems to use odbc on this server. res_config_mysql.so is used instead.

By: George Joseph (gjoseph) 2016-02-03 19:52:03.660-0600

More info received.


By: George Joseph (gjoseph) 2016-02-04 12:06:41.771-0600

The only thing I see is that I get a warning about the duration column needing to be char not int.  You might want to change it to varchar(30) and see what happens.

Also, where did you get the schema?  I can't find a reference for it anywhere?



By: Dmitriy Serov (Demon) 2016-02-05 13:11:07.075-0600

contrib/realtime/mysql/
but.. it's very strange files. Duration is INTEGER where.

Now i found: https://wiki.asterisk.org/wiki/display/AST/ODBC+Voicemail+Storage

ok... changed to varchar.
This error occurs quite rarely.
Plan to move to voicemail ODBC_STORAGE. Now file storage used.