[OpenSIPS-Users] ERROR:load_balancer:do_load_balance: failed to create dialog

Ruslan Bukin br at bsdpad.com
Fri Nov 4 09:39:14 CET 2011


why it is not possible to load_balance REGISTER?

in my case I relay REGISTER to PBX and call save(..) in onreply_route

so I need to lb REGISTER

On Fri, Jun 11, 2010 at 06:17:03PM +0300, Bogdan-Andrei Iancu wrote:
> OK :)
> 
> starting with 1.6, the error reporting became more verbose, so, that 
> might be cause. You had the same errors in 1.5 also, but you were not 
> aware of them as they were not reported.
> 
> Regards,
> Bogdan
> 
> Peter P GMX wrote:
> > Hello Bogdan,
> >
> > you are right, there were some Registers in between, which caused this
> > message.
> >
> > Best regards
> > Peter
> >
> > Bogdan-Andrei Iancu schrieb:
> >   
> >> Hi Peter,
> >>
> >> if you do not get any prior err msg from create_dialog function, I 
> >> suspect you call the LB function for something not an initial INVITE - 
> >> could you check this?
> >>
> >> Regards,
> >> Bogdan
> >>
> >> Peter P GMX wrote:
> >>   
> >>     
> >>> After upgrading Opensips from 1.5.3 to 1.6.2 we get the following errors:
> >>>   ERROR:load_balancer:do_load_balance: failed to create dialog
> >>>
> >>> Googling this error showed no results. Any hints where this comes from?
> >>>
> >>> here's the (anonymized) config file:
> >>>
> >>> debug=1
> >>> memlog=1
> >>>
> >>> fork=yes
> >>> children=2
> >>> log_stderror=no
> >>> log_facility=LOG_LOCAL0
> >>>
> >>> disable_tcp=yes
> >>> disable_dns_blacklist = yes
> >>>
> >>> auto_aliases=no
> >>>
> >>> check_via=no
> >>> dns=off
> >>> rev_dns=off
> >>>
> >>> listen=udp:xx.xxx.xxx.167:5060
> >>> alias=udp:my.domain.de:5060
> >>>
> >>> mpath="/usr/local/lib64/opensips/modules/"
> >>>
> >>> loadmodule "maxfwd.so"
> >>> loadmodule "sl.so"
> >>> loadmodule "db_mysql.so"
> >>> loadmodule "tm.so"
> >>> loadmodule "xlog.so"
> >>> loadmodule "uri.so"
> >>> loadmodule "rr.so"
> >>> loadmodule "dialog.so"
> >>> loadmodule "mi_fifo.so"
> >>> #loadmodule "mi_xmlrpc.so"
> >>> loadmodule "signaling.so"
> >>> loadmodule "textops.so"
> >>> loadmodule "load_balancer.so"
> >>>
> >>> modparam("mi_fifo", "fifo_name", "/tmp/opensips_fifo")
> >>>
> >>> modparam("dialog", "dlg_flag", 13)
> >>> modparam("dialog", "db_mode", 1)
> >>> modparam("dialog", "db_url",
> >>> "mysql://odbc:2dsf3f7hn84gh_sd@10.255.0.197/opensips")
> >>>
> >>> modparam("rr","enable_double_rr",1)
> >>> modparam("rr","append_fromtag",1)
> >>>
> >>> modparam("load_balancer",
> >>> "db_url","mysql://odbc:2dsf3f7hn84gh_sd@10.255.0.197/opensips")
> >>>
> >>>
> >>> route{
> >>>         if (!mf_process_maxfwd_header("3")) {
> >>>                 sl_send_reply("483","looping");
> >>>                 exit;
> >>>         }
> >>>
> >>>
> >>>         if (!has_totag()) {
> >>>                 # initial request
> >>>                 record_route();
> >>>         } else {
> >>>                 # sequential request -> obey Route indication
> >>>                 loose_route();
> >>>                 t_relay();
> >>>                 exit;
> >>>         }
> >>>
> >>>         # handle cancel and re-transmissions
> >>>         if ( !t_check_trans() ) {
> >>>                 if (is_method("CANCEL")) {
> >>>                         exit;
> >>>                 }
> >>>         }
> >>>
> >>>        # CANCEL processing #  || is_method("RINGING")
> >>>          if (is_method("CANCEL")) {
> >>>                 if (t_check_trans())
> >>>                     t_relay();
> >>>                     exit;
> >>>          }
> >>>
> >>>
> >>>         # from now on we have only the initial requests
> >>>         if (!is_method("INVITE") && !is_method("REGISTER")){           
> >>> # && !is_method("CANCEL")) {
> >>>                 send_reply("405","Method Not Allowed");
> >>>                 exit;
> >>>         }
> >>>
> >>>         # Load Balancing only for my.domain.de and if coming from external
> >>>         if (!($si =~"^xx.xxx.xxx.16") && ($td=~"^my.domain.de" ||
> >>> $td=~"^xx.xxx.xxx.167")) {
> >>>             # detect resources and do balancing
> >>>             if ($si=~"^212.91.250.104") {
> >>>                 # looks like DNSN
> >>>                 append_hf("X-Original-IP: $si\r\n");
> >>>                 load_balance("1","external");
> >>>                 $ru = "sip:" + $rU + "@" + $dd + ":" + $dp;
> >>>                 sl_send_reply("302", "redirect");
> >>>                 exit; #exit here as processing stops here
> >>>             } else if ($si=~"^212.91.250.103") { # fill in QSC IP later
> >>>                 append_hf("X-Original-IP: $si\r\n");
> >>>                 load_balance("1","external");
> >>>                 $ru = "sip:" + $rU + "@" + $dd + ":" + $dp;
> >>>                 sl_send_reply("302", "redirect");
> >>>                 exit; #exit here as processing stops here
> >>>             } else if ($si=~"^212.88.143.228") { # VSEN
> >>>                 append_hf("X-Original-IP: $si\r\n");
> >>>                 load_balance("1","external");
> >>>                 $ru = "sip:" + $rU + "@" + $dd + ":" + $dp;
> >>>                 sl_send_reply("302", "redirect");
> >>>                 exit; #exit here as processing stops here
> >>>             } else {
> >>>                 # Enter ogiginal IP header
> >>>                 append_hf("X-Original-IP: $si\r\n");
> >>>                 # Forward to the freeswitches
> >>>                 load_balance("1","internal");
> >>>             }
> >>>             if ($retcode<0) {
> >>>                 sl_send_reply("500","Service full");
> >>>                 exit;
> >>>             }
> >>>         } else { # no load balancing, pass back from HA to public net
> >>>             if (($si=~"^xx.xxx.xxx.168") || ($si=~"^xx.xxx.xxx.169")) {
> >>>                 xlog("ru=$ru Ru=$rU td=$td tn=$tn");
> >>>             } else {
> >>>                 # block these calls
> >>>                 exit;
> >>>             }
> >>>         }
> >>>         # send it out for all domains
> >>>         if (!t_relay()) {
> >>>                 sl_reply_error();
> >>>         }
> >>> }
> >>>
> >>>
> >>> _______________________________________________
> >>> Users mailing list
> >>> Users at lists.opensips.org
> >>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
> >>>
> >>>   
> >>>     
> >>>       
> >>   
> >>     
> >
> > _______________________________________________
> > Users mailing list
> > Users at lists.opensips.org
> > http://lists.opensips.org/cgi-bin/mailman/listinfo/users
> >
> >   
> 
> 
> -- 
> Bogdan-Andrei Iancu
> www.voice-system.ro
> 
> 
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
> 



More information about the Users mailing list