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

Peter P GMX Prometheus001 at gmx.net
Tue Jun 8 16:29:42 CEST 2010


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();
        }
}




More information about the Users mailing list