Hi Guys,

I have an issue running FS... it crashes apparently without leaving any log
... not even a core dump is left.

The machine is dual AMD opteron quad core with 8 GB RAM and i'm running 75
simultaneous calls (with media) with a rate of 5 calls per second.


As i was not able to reproduce the issue on a real traffic so i went back to
sipp and started generating some... sipp & scenario files are ok.
after a while (few minutes)...  on sipp i start getting retransmissions and
when i check FS i see two situations:

1. freeswitch has died
2. freeswitch process is running but it doesn't respond to any call... as
nothing has been sent ... and after a while it dies too.

I'm using sip profile external (moved to port 5060) with some semi-complex
dialplan... attached.

well .. the point is that i cannot even tell where it crashes as there is no
log.

I have:

<param name="loglevel" value="debug"/>
<X-PRE-PROCESS cmd="set" data="call_debug=true"/>
<X-PRE-PROCESS cmd="set" data="console_loglevel=debug"/>

fs is dumping the log to the log directory ... but nothing special can't bee
seen there...


I tried to recompile with gdb

export CFLAGS="-g -ggdb"
export MOD_CFLAGS="-g -ggdb"
./configure


but without luck...

ode1:/opt/freeswitch-trunk#
node1:/opt/freeswitch-trunk# sudo make
make[1]: Entering directory `/opt/freeswitch-trunk/libs/pcre'
make  all-am
make[2]: Entering directory `/opt/freeswitch-trunk/libs/pcre'
g++ -DHAVE_CONFIG_H -I.     -O2 -MT pcrecpp_unittest.o -MD -MP -MF
.deps/pcrecpp_unittest.Tpo -c -o pcrecpp_unittest.o pcrecpp_unittest.cc
g++: Internal error: Segmentation fault (program cc1plus)
Please submit a full bug report.
See <file:///usr/share/doc/gcc-4.3/README.Bugs> for instructions.
make[2]: *** [pcrecpp_unittest.o] Error 1
make[2]: Leaving directory `/opt/freeswitch-trunk/libs/pcre'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/opt/freeswitch-trunk/libs/pcre'
make: *** [libs/pcre/libpcre.la] Error 2
node1:/opt/freeswitch-trunk#
node1:/opt/freeswitch-trunk#


Of course I'm using the latest trunk...

Can anyone help?
<include>

<extension name="VAS">
    <condition field="destination_number" expression="^0(\d+)$">
        <action application="log" data="INFO ######################## Entering VAS ########################\n"/>
    <action application="execute_extension" data="0$1_priceAdvice XML public"/>
    <action application="execute_extension" data="0$1_serviceDiscriminator XML public"/>
        <action application="hangup" data="NORMAL_CLEARING"/>
    </condition>
</extension>


<extension name="priceAdvice">
    <condition field="destination_number" expression="(\d+)_priceAdvice$">
       <action application="log" data="INFO ######################## Price Adviced ########################\n"/>
       <!--action application="getServiceTypeID_db" data="in $1, out service_type_id"/-->
       <action application="set" data="service_type_id=1"/>
       <action application="pre_answer"/>
       <!--action application="getPricePrompt_db" data="in $1, in ${caller_id_number} , out price_prompt"/-->
       <action application="set" data="price_prompt=4.93kn_novo_upozorenje.wav"/>
       <action application="playback" data="vas/${price_prompt}"/>
       <!--action application="sched_hangup" data="+${cond(${regex($1|3856(\d)\d+|%1)} == 8 ? 120 : 3600)}"/-->
       <action application="sleep" data="2000"/>
    </condition>
</extension>

<extension name="ServiceDiscriminator">
    <condition field="destination_number" expression="(\d+)_serviceDiscriminator$">
       <action application="log" data="INFO ######################## Service Discriminator ########################\n"/>
       <!--action application="getServiceTypeID_db" data="in $1, out service_type_id"/-->
       <action application="set" data="dialed_number=$1"/>
      
       <action application="log" data="INFO ########### service_type_id = '${service_type_id}' ##########"/>
       <action application="log" data="INFO ########### dialed_number = '${dialed_number}' ##############"/>
    </condition>

    <condition field="${service_type_id}" expression="^1$" break="on-true">
       <action application="log" data="INFO ######################## KVIZ ########################\n"/>
       <action application="execute_extension" data="${dialed_number}_getVars_Kviz XML public"/>
    </condition>
</extension>

<extension name="getVars_Kviz">
    <condition field="destination_number" expression="(\d+)_getVars_Kviz$">
       <action application="log" data="INFO ######################## GetVars Kviz ####################"/>
       <action application="set" data="bNum=$1"/>
       <!--action application="getQuizServiceStatus_ch" data="in $1, in ${caller_id_number}, out service_status1, out number_2_connect, out next_number_2_connect, out next_number_2_display"/>
       <action application="getServiceOutOfWorkingHoursPrompt_db" data="in $1, out not_working_prompt"/>
       <action application="getServiceWinPrompt_db" data="in $1, out service_win_prompt"/>
       <action application="getServiceLoosePrompt_db" data="in $1, out service_loose_prompt"/-->
       <!--action application="sched_hangup" data="+${cond(${regex($1|3856(\d)\d+|%1)} == 8 ? 120 : 3600)}"/-->

       <action application="set" data="service_status1=loose"/>
       <action application="set" data="not_working_prompt=2/emisija trenutno nije u tijeku-za telefone.wav"/>
       <action application="set" data="service_win_prompt=2/bit cete spojeni u emisiju.wav"/>
       <action application="set" data="service_loose_prompt=2/zovi ponovo.wav"/>

       <action application="execute_extension" data="$1_Kviz XML public"/>
    </condition>
</extension>


<extension name="Kviz">
    <condition field="${service_status1}" expression="^suspended$" break="on-true">
       <action application="log" data="INFO ########################  Suspended ########################\n"/>
       <action application="playback" data="vas/${not_working_prompt}"/>
       <action application="hangup" data="NORMAL_CLEARING"/>
    </condition>

    <condition field="${service_status1}" expression="^idle$" break="on-true">
       <action application="log" data="INFO ########################  Not Working ########################\n"/>
       <action application="playback" data="vas/${not_working_prompt}"/>
       <action application="hangup" data="NORMAL_CLEARING"/>
    </condition>

    <condition field="${service_status1}" expression="^loose$" break="on-true">
       <action application="log" data="INFO ########################   You Loose   #######################\n"/>
       <action application="answer"/>
       <action application="playback" data="vas/${service_loose_prompt}"/>
       <action application="hangup" data="NORMAL_CLEARING"/>
    </condition>

    <condition field="${service_status1}" expression="^win$" break="on-true">
       <action application="log" data="INFO ########################    You Win  ########################\n"/>
       <action application="answer"/>
       <action application="playback" data="vas/${service_win_prompt}"/>
       <action application="set" data="bypass_media=false"/>
       <action application="set" data="hangup_after_bridge=true"/>
       <action application="export" data="nolocal:execute_on_answer=updateQuizServiceStatus_ch in ${bNum}, in connected"/>
       <action application="bridge" data="[service_number=${bNum}]sofia/gateway/gw1/${number_2_connect}"/>
    </condition>


    <condition field="${service_status1}" expression="^wlwin$" break="on-true">
       <action application="log" data="INFO ########################    You Win WL ########################\n"/>
       <action application="answer"/>
       <action application="playback" data="vas/${service_win_prompt}"/>
       <action application="set" data="bypass_media=false"/>
       <action application="set" data="hangup_after_bridge=true"/>
       <action application="set" data="effective_caller_id_number=${next_number_2_display}"/>
       <action application="export" data="nolocal:execute_on_answer=updateQuizServiceStatus_ch in ${bNum}, in connected"/>
       <action application="bridge" data="[service_number=${bNum}]sofia/gateway/gw1/${number_2_connect}"/>
    </condition>

    <condition field="${service_status1}" expression="^swin$" break="on-false"/>
    <condition field="caller_id_number" expression="^${next_number_2_connect}$" break="on-false">
       <action application="log" data="INFO ########################   You Win Sp  #######################\n"/>
       <action application="answer"/>
       <action application="playback" data="vas/${service_win_prompt}"/>
       <action application="set" data="bypass_media=false"/>
       <action application="set" data="hangup_after_bridge=true"/>
       <action application="set" data="effective_caller_id_number=${next_number_2_display}"/>
       <action application="export" data="nolocal:execute_on_answer=updateQuizServiceStatus_ch in ${bNum}, in connected"/>
       <action application="bridge" data="[service_number=${bNum}]sofia/gateway/gw1/${number_2_connect}"/>
       <anti-action application="updateQuizServiceStatus_ch" data="in ${bNum}, in accepting"/>
       <anti-action application="log" data="INFO ########################   You Loose else   #######################\n"/>
       <anti-action application="answer"/>
       <anti-action application="playback" data="vas/${service_loose_prompt}"/>
       <anti-action application="hangup" data="NORMAL_CLEARING"/>

     </condition>
</extension>
</include>
_______________________________________________
FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org

Reply via email to