The enhancement has been implemented. Upgrade to hot fix version 07.16.0350 (B0357, U0237) or higher v 7.1 and hot fix version 08.01.0139 (B0250, U0166) or higher for v 8.0.
Two new connection options
MultiSubnetFailover and
ApplicationIntent have been added to the driver.
Refer to
Connect and Connect64 for ODBC hot fix download and install instructions for instructions to download and install the hot fix.
MultiSubnetFailover:
To utilize the new functionality, set the new connection property “MultiSubnetFailover” to 1 in the data source or connection string.
With MultiSubnetFailover enabled, set the driver’s HostName property to the DNS name of the SQL Server Always On Availability Group Listener. In an Always On environment, the listener name maps to all the ip address of the Availability Group listeners in the cluster. When connection failover occurs, the driver will ask DNS for the list of ip addresses associated with the listener name and attempt to reconnect to all of the ips in parallel. Whichever connection succeeds first will be kept and the other connection attempts discarded.
Since the driver dynamically determines the ip addresses of the listeners through DNS look up, using the MultiSubnetFailover option will cause the driver to ignore the existing AlternateServers connection property that was previously used to define the server list to which the driver should attempt to connect when failover occurs.
MultiSubnetFailover connection option details:
Option Name: MultiSubnetFailover
Valid values:
0 – Disabled
1 – Enabled
Default – 0
Application Intent:
This driver also supports the Application Intent feature of an Always on cluster. Application Intent is a request for the driver to ask the SQL Server listener for connectivity to either a read only or read/write node within the cluster. The driver has no control over the routing as it is the responsibility of the listener to route the connection to one of the nodes in the Availability Group.
If ApplicationIntent is set to ReadOnly and the cluster only has Read/Write nodes defined, then the connection to one of those nodes will succeed. If a ReadOnly node is available in this scenario, then the connection is properly routed to that node.
ApplicationIntent connection option details:
Option Name: ApplicationIntent
Valid values:
0 – READWRITE
1 – READONLY
Default – 0
The option is exposed on the Advanced tab of the Windows driver setup dialog.
NOTE: Setting
MultiSubnetFailover=1 is required for
ApplicationIntent connection option to work.