[freetds] SQL Cluster always on

James K. Lowden james.k.lowden at icloud.com
Thu Jan 7 10:18:54 EST 2016

On Thu, 07 Jan 2016 10:31:46 +0100
"esterniclos at gmail.com" <esterniclos at gmail.com> wrote:

> Right now, TDS works as long as the listener is in the first node.
> In the example
>                  dblistener.myorg.com   instance working in
>     If the database is moved to another instance, it returns a
> timeout. Never checks the rest of IPs
> Possible solution
>         Try to login in several times with as many objects as IP's are
> in DNS:
>                         tds/login.c:tds_set_host(TDSLOGIN * tds_login,
> const char *hostname)
>           This would penalize a little when the database is in the
> backup instance, as it has to receive a timeout before making the
> connection.

Yours is a good idea.  Don't worry about the delay introduced by timing
out on the primary, because the delay will normally be less than 1
second, provided DNS is working.  A failed node will not accept a
connection on SQL Server's port if SQL Server isn't running.  

$ time -p tsql -H www.freetds.org -p 8000
locale is "en_US.UTF-8"
locale charset is "UTF-8"
using default charset "UTF-8"
There was a problem connecting to the server
real 0.13
user 0.00
sys 0.00

It's very unusual for SQL Server to be running, accepting connections,
and timing out on logins.  In any case, if the delay is important, the
configuration can be changed while the backup is in use.  



More information about the FreeTDS mailing list