[Home]

Summary:ASTERISK-05157: [patch] Asterisk segfaults with RealTime queues
Reporter:Daniel Swarbrick (pressureman)Labels:
Date Opened:2005-09-26 21:30:05Date Closed:2008-01-15 15:49:50.000-0600
Priority:CriticalRegression?No
Status:Closed/CompleteComponents:Applications/app_queue
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) 5300.txt
( 1) queue_fix.patch
Description:Asterisk crashes immediately upon execute of the Queue application, when using Realtime queues.

Queue record in database:
queue_id |     name     | musiconhold |    announce     | strategy | context | timeout | retry | wrapuptime | maxlen | announce_frequency | announce_holdtime | announce_round_seconds | queue_youarenext | queue_thereare | queue_callswaiting | queue_holdtime | queue_minutes | queue_seconds | queue_thankyou | queue_lessthan  | monitor_format | monitor_join | joinempty | leavewhenempty | eventwhencalled
----------+--------------+-------------+-----------------+----------+---------+---------+-------+------------+--------+--------------------+-------------------+------------------------+------------------+----------------+--------------------+----------------+---------------+---------------+----------------+-----------------+----------------+--------------+-----------+----------------+-----------------
       1 | helpdesk-pri | default     | queue-announce  | ringall  |         |         |       |          5 |        |                 60 | yes               |                        | queue-youarenext | queue-thereare | queue-callswaiting | queue-holdtime | queue-minutes | queue-seconds | queue-thankyou | queue-less-than |                |              |           |                |
Comments:By: Daniel Swarbrick (pressureman) 2005-09-26 21:43:01

My bad. Didn't have queue_members table created... even so, crashing is a pretty severe way of saying 'could not find queue_members table'!

This report can probably be deleted.

By: Clod Patry (junky) 2005-09-26 22:26:21

I agree, a LOG_ERROR should be printed instead a segfault.

By: Russell Bryant (russell) 2005-09-26 22:30:29

Can we get a backtrace of the crash with asterisk built with 'make dont-optimize', please?



By: Clod Patry (junky) 2005-09-26 22:37:28

pressureman: please contact me on IRC (JunK-Y@freenode).

By: Clod Patry (junky) 2005-09-26 23:18:39

patch made on 1.163.
Tested with reporter, confirmed it works fine.

By: Clod Patry (junky) 2005-09-26 23:35:08

The newest fixes drumkilla request.
Test again with reporter:

When calling queue without queue_members, CLI will loooks like:
Sep 27 16:31:13 ERROR[26966]: app_queue.c:879 join_queue: no queue_members defined in your config (extconfig.conf).
Sep 27 16:31:13 WARNING[26966]: app_queue.c:2992 queue_exec: Unable to join queue 'helpdesk-pri'

so no more segfault.

By: Clod Patry (junky) 2005-09-26 23:39:42

confirmed to works fine.

By: Kevin P. Fleming (kpfleming) 2005-09-29 00:15:40

Committed to CVS HEAD, thanks!

By: Russell Bryant (russell) 2005-09-29 11:10:30

I saw someone in IRC talking about how this patch makes non-realtime queues not work.  I want someone to try this patch and make sure it fixes it.

By: Shane Spencer (whardier) 2005-09-29 20:05:16

This patch fixed this error for me:

From CVS HEAD an hour before the warning (AKST):

Sep 29 16:47:31 WARNING[17828] app_queue.c: Unable to join queue '1130'
Sep 29 16:49:38 ERROR[17828] app_queue.c: no queue_members defined in your config (extconfig.conf).

Where it would not attempt to join a queue inside of queues.conf and relied totally on queues from realtime (which I do not have implemented)

Now the queues are working again. Thanks.

By: Marco Balmer (micressor) 2005-09-30 05:11:04

queue_fix.patch works for me too.

>Sep 30 06:26:23 ERROR[27923] app_queue.c: no queue_members defined in your
>config (extconfig.conf).
>Sep 30 06:26:23 WARNING[27923] app_queue.c: Unable to join queue 'maba'

By: Adrian Sietsma (adrian_sie) 2005-09-30 07:19:01

this patch (or something else) appears to have broken non-realtime queues.
here is agent logging in :

   -- Executing AgentCallbackLogin("Local/login@operator_access-19d0,2", "3004|3004@agent_callback") in new stack
   -- Local/login@operator_access-19d0,1 answered IAX2/bob-6
 == Setting global variable 'AGENTBYCALLERID_3004' to '3004'
   -- Playing 'agent-loginok' (language 'en')
 == Spawn extension (dodial, login, 1) exited non-zero on 'IAX2/bob-6<MASQ>'
   -- Executing NoOp("IAX2/bob-6<MASQ>", "h") in new stack
   -- Executing Hangup("IAX2/bob-6<MASQ>", "") in new stack
 == Spawn extension (dodial, h, 2) exited non-zero on 'IAX2/bob-6<MASQ>'
 == Callback Agent '3004' logged in on 3004@agent_callback
   -- Playing 'vm-goodbye' (language 'en')
 == Spawn extension (operator_access, login, 1) exited non-zero on 'IAX2/bob-6'
   -- Hungup 'IAX2/bob-6'

here is client call :
   -- Executing Queue("Local/assist@operator_access-8656,2", "assist") in new stack
Sep 30 12:15:17 ERROR[5393]: app_queue.c:879 join_queue: no queue_members defined in your config (extconfig.conf).
Sep 30 12:15:17 WARNING[5393]: app_queue.c:2993 queue_exec: Unable to join queue 'assist'


i will retry an older version.

By: Russell Bryant (russell) 2005-09-30 07:43:58

adrian_sie: try queue_fix.patch

By: vortex_0_o (vortex_0_o) 2005-09-30 08:02:33

patch works for me

By: Adrian Sietsma (adrian_sie) 2005-09-30 09:28:38

yep, that fixed it. thanks. (i misread the notes - thought that the patch had been applied to cvs-head).
sorry for the delay responding - my poor old celeron scratch box takes a while to build...

By: Kevin P. Fleming (kpfleming) 2005-09-30 10:05:43

Committed to CVS HEAD, thanks!

By: Digium Subversion (svnbot) 2008-01-15 15:49:45.000-0600

Repository: asterisk
Revision: 6693

U   trunk/apps/app_queue.c

------------------------------------------------------------------------
r6693 | kpfleming | 2008-01-15 15:49:44 -0600 (Tue, 15 Jan 2008) | 2 lines

ensure that app_queue won't crash if no members are defined via Realtime (issue ASTERISK-5157)

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=6693

By: Digium Subversion (svnbot) 2008-01-15 15:49:50.000-0600

Repository: asterisk
Revision: 6699

U   trunk/apps/app_queue.c

------------------------------------------------------------------------
r6699 | kpfleming | 2008-01-15 15:49:49 -0600 (Tue, 15 Jan 2008) | 2 lines

fix queues properly (issue ASTERISK-5157, take two)

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=6699