Is there a difference in how it behaves when:

a) A database that was previously reachable becomes unreachable or 
unresponsive? vs. 

b) A db_url that is not reachable in principle?

— Alex

> On Feb 22, 2022, at 7:11 PM, Ben Kaufman <[email protected]> wrote:
> 
> I’m not sure if this is by design or not.  I have things I want to log to a 
> SQL DB, but it’s not nearly as important as call handling, so the 
> sql_query_async() function looked ideal, but in testing, if the DB is not 
> responsive, the call processing gets blocked.  In the example below, I’m 
> using just a short hostname which isn’t resolvable, but if I have an IP 
> address there that isn’t really assigned (for example if the DB server is 
> down), the same blocking behavior is exhibited, but the error is slightly 
> different (can’t connect instead of unknown host).  
>  
>  
>  
> Here’s my config.  This specific simple config was tested on Kamailio 5.5, 
> but I observe similar behavior (in a more complicated config) in the dev 
> branch as well.
>  
>  
> - - - - 
>  
> #!KAMAILIO
>  
> async_workers=2
>  
> loadmodule "db_mysql"
> loadmodule "sqlops"
> loadmodule "sl"
> loadmodule "xlog"
> loadmodule "pv"
>  
> force_rport=yes
>  
> ## Host sql does not resolve.
> modparam("sqlops","sqlcon","cb=>mysql://kamailio:kamailiorw@sql/kamailio")
> ## But start anyways.
> modparam("sqlops", "connect_mode", 1)
>  
> request_route {
>     sl_send_reply("100", "Trying"); ## Prevent re-transmissions from the UAC
>  
>     xlog("L_NOTICE", "Time before sql_query_async(): [$TV(Sn)]\n");
>     sql_query_async("cb", "INSERT INTO table1 (col) VALUES ('val')");
>  
>     xlog("L_NOTICE", "Time before sl_send_reply(): [$TV(Sn)]\n");
>     sl_send_reply("404", "Not found");
> }
>  
>  
> Here’s the log if I send a simple INVITE with SIPp. Note the timestamps
>  
> 9(16) NOTICE: <script>: Time before sql_query_async(): [1645574694.546165]
> 9(16) ERROR: db_mysql [km_my_con.c:163]: db_mysql_new_connection(): driver 
> error: Unknown MySQL server host 'sql' (-3)
> 9(16) ERROR: <core> [db.c:319]: db_do_init2(): could not add connection to 
> the pool
> 9(16) ERROR: sqlops [sql_api.c:190]: sql_reconnect(): failed to connect to 
> the database [cb]
> 9(16) ERROR: sqlops [sqlops.c:232]: sql_check_connection(): failed to connect 
> to database
> 9(16) ERROR: sqlops [sqlops.c:264]: sql_query_async(): invalid connection to 
> database 9(16) NOTICE: <script>: Time before sl_send_reply(): 
> [1645574699.552440]
>  
>  
>  
>  
>  
>  
>  
> Ben Kaufman
> Sr. VoIP Engineer - BCM One
>  
> +1.612.735.9309
> [email protected]
> 24 hour client support: +1.855.639.6300
>  
>        
>  
> NOTE: This e-mail and any attachments are from BCM One, Inc. and are intended
> solely for the use and review of the individual(s) to whom it is addressed.
> If you believe you received this e-mail in error, please notify the sender
> immediately, delete the e-mail (and any attachments) from your computer and do
> not copy or disclose it to anyone else.
>  
> __________________________________________________________
> Kamailio - Users Mailing List - Non Commercial Discussions
>  * [email protected]
> Important: keep the mailing list in the recipients, do not reply only to the 
> sender!
> Edit mailing list options or unsubscribe:
>  * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users

-- 
Alex Balashov | Principal | Evariste Systems LLC

Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free)
Web: http://www.evaristesys.com/, http://www.csrpswitch.com/


__________________________________________________________
Kamailio - Users Mailing List - Non Commercial Discussions
  * [email protected]
Important: keep the mailing list in the recipients, do not reply only to the 
sender!
Edit mailing list options or unsubscribe:
  * https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users

Reply via email to