Re: [SR-Users] AVP Error in version 3.1.0

2011-02-20 Thread Jijo
Yes this happens in a testing environment..
I got your point, we saved after t-relay to send the message faster as db save 
can cause delay.
We will make the changes as per your suggestion .
Thanks
Jijo

On Feb 18, 2011, at 4:11 AM, Daniel-Constantin Mierla mico...@gmail.com wrote:

 Hello,
 
 is any particular reason to do the processing after t_relay() ? You can do 
 the save before, since it is the same register message.
 
 Also, are you getting this in a testing environment while using tools like 
 sipp to simulate traffic?
 
 Starting with 3.0, the AVPs (which are associated with the message and 
 transaction in this case) become available in onreply_route[3] (in 1.x that 
 was a config option for tm module), so if it is fast reply, it my happen that 
 the avps are no longer available in the script after t_relay().
 
 As a recommended rule, it is better to avoid using avps after t_relay() - 
 this function creates the transaction and forwards the message. From there 
 on, the avps are in the hands of tm module, which moves them to onreply_route 
 or failure_route, depending on your config file.
 
 Cheers,
 Daniel
 
 On 2/16/11 4:28 PM, Jijo wrote:
 
 Hi Daniel,
 
 Please find the code and corresponding error trace. This happens only for 1 
 subscriber randomly out of 2000 subscribers. This can be reproduced 
 consistently also.
 
 route(1)
 {
 :
 :
 :
 
 # -
 # Registration handling dynamic endpoints
 # -
  
 $avp(reg_contact)= $ct;
 $var(reg_contact)= $ct;
 t_on_reply(3);
 
 if(!is_avp_set($avp(reg_contact))) 
 xlog(L_ERR, R1 - not set the reg_contact3 F=$fu T=$tu Ct=$ct 
 IP=$si CI=$ci var_contact:$var(reg_contact)\n);
  
  # relay
  if(!t_relay_to(0x3))
 {
 xlog(L_ERR, R1/R10 - Registration failed - M=$rm F=$fu T=$tu 
 CT=$ct IP=$si CI=$ci\n);
 append_to_reply(Warning: 399 $Ri - R1 - Registration failed: 
 fail in relay in R10.\r\n);
 sl_reply_error();
 exit;
 }
 
 if(!is_avp_set($avp(reg_contact))) 
 xlog(L_ERR, R1 - not set the reg_contact4 F=$fu T=$tu Ct=$ct 
 IP=$si CI=$ci var_contact:$var(reg_contact)\n);
 
 xlog(L_ERR, R1 - Saving Registration-2  save to location F=$fu 
 T=$tu Ct=$ct IP=$si CI=$ci reg_ct:$avp(reg_contact)\n);
  
  if(!isflagset(28)  is_avp_set($avp(reg_contact))) # Check if we 
 need to save it in location table
 {
 if(!save(location,0x02))
 {
 xlog(L_ERR, R1 - Location save for Registration failed - 
 M=$rm F=$fu T=$tu IP=$si CT=$ct\n);
 }
 }
  
 LOGS for the error condtion.
  
 
 2011-02-15T12:19:30-05:00 [err] sipserver: ERROR: script: R1 - not set the 
 reg_contact4 F=sip:5614510478@10.235.86.54:5060;transport=UDP 
 T=sip:5614510478@10.235.86.54:5060;transport=UDP 
 Ct=sip:5614510478@10.235.204.5:5060 IP=10.235.204.5 
 CI=119ac328-4cceb0a-13c4-7fa55-76a2903a-7fa55 
 var_contact:sip:5614510478@10.235.204.5:5060
 2011-02-15T12:19:30-05:00 [err] sipserver: ERROR: script: R1 - Saving 
 Registration-2  save to location 
 F=sip:5614510478@10.235.86.54:5060;transport=UDP 
 T=sip:5614510478@10.235.86.54:5060;transport=UDP 
 Ct=sip:5614510478@10.235.204.5:5060 IP=10.235.204.5 
 CI=119ac328-4cceb0a-13c4-7fa55-76a2903a-7fa55 reg_ct:null
 
 
 On Wed, Feb 16, 2011 at 5:02 AM, Daniel-Constantin Mierla 
 mico...@gmail.com wrote:
 Hello,
 
 it is not clear for me what you tried to do. Can you paste here the parts of 
 the config file that are relevant for the case? Do you relay the REGISTER?
 
 Cheers,
 Daniel
 
 
 On 2/16/11 1:17 AM, Jijo wrote:
 Hi All,
 
 On register we store the contact in an avp variable and do a t_relay(). 
 After t_relay() the $avp variable becomes null. 
 I printed the value before after t_relay() to determine this behavior.
 This happens only on registration load test around 2000 subcribers with ( 4 
 REGISTER/sec).  This happens only for one subscriber out of 2000 
 subscribers. 
 
 I did the similar test with $var and its working fine.
 
 Anybody observed similar behavior with avp? This was working in kamailio 
 1.4 version. We did the upgrade recently to 3.1.0 and started observing 
 this issue.
 
 How do we debug this issue.?
 
 
 Thanks
 Jijo
 
 
 ___
 SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
 sr-users@lists.sip-router.org
 http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
 
 -- 
 Daniel-Constantin Mierla
 http://www.asipto.com
 
 
 -- 
 Daniel-Constantin Mierla
 http://www.asipto.com
___
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users


[SR-Users] pcre mystery or bug in dialplan module?

2011-02-20 Thread Juha Heinanen
i have in dialplan table record

287 14 10 1 ^(.+)\+358 0 ^(.+):\+358(.+) \1:0\2

and when it is applied to uri

Feb 21 08:05:15 sip /usr/sbin/sip-proxy[24071]: INFO: uri 
sip:+35892345...@test.fi;user=phone

the resulting uri looks like this:

Feb 21 08:05:15 sip /usr/sbin/sip-proxy[24071]: INFO: uri 
sip\1:092345...@test.fi;user=phone

i can't figure out, where \1 comes to the result, because \1 is has
already produced 'sip' to it.

i have added debug to dialplan module and looks like it compiles correct
subst and repl expressions:

Feb 21 08:05:05 sip /usr/sbin/sip-proxy[24067]: INFO: dialplan [dp_db.c:392]: 
parsing repl_exp \1:0\2
Feb 21 08:05:05 sip /usr/sbin/sip-proxy[24067]: INFO: dialplan [dp_db.c:404]: 
compilig subst_exp ^(.+):\+358(.+)

is there some stupid mistake in the expressions or could it be a bug
somewhere?

-- juha

___
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users