JDBC Connections Are Not Load Balanced Across SCAN Listeners (Doc ID 1468108.1)

Last updated on AUGUST 03, 2016

Applies to:

JDBC - Version 11.2.0.2.0 and later
Information in this document applies to any platform.

Symptoms

When SCAN (Single Client Access Name) naming is in use in an Oracle database cluster, we typically recommend that JDBC applications are configured to use the SCAN name, rather than a list of VIP interface names or IP numbers. This makes it easier to manage the cluster topology centrally -- adding a node, for instance, will not require any changes to the JDBC application. SCAN works at the DNS level -- the site DNS must provide a list of IPs that match the designated SCAN name. The Oracle JDBC driver resolves the SCAN name to a particular IP in the usual way, using Java networking API calls, which ultimately result in native calls to the name resolution libraries. The DNS server provides a different IP number from its list on each request for the SCAN name.

Customers have reported that, in some set-ups, a particular JDBC client will make all its connections to the same SCAN listener. This may be the case even though the DNS server appears to be serving multiple IPs for the SCAN name. There are concerns that this will hinder the load balancing operation of the cluster.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms