Technology πŸ‘€ KP Expert πŸ“… Oct 21, 2026 πŸ‘οΈ 176 views

What Is Smart Connection Rebalance in Oracle RAC? Explained Simply for DBAs

What the feature does, how it cuts Cache Fusion overhead, how to tell if your service needs it, and how it compares with older RAC load balancing options.
23ai
Release that introduced the feature
0
Application code changes required
Continuous
How often it re-evaluates session placement

Smart Connection Rebalance is an Oracle RAC feature that automatically moves database sessions to the instance where their data already lives, so the cluster stops wasting time shipping blocks between nodes. It arrived with Oracle Database 23ai and continues in Oracle AI Database 26ai.

In this guide, you will learn:

  • Why evenly balanced RAC sessions can still perform badly
  • What Smart Connection Rebalance is, in plain words
  • How it works, step by step
  • How to tell if your service would benefit
  • Prerequisites, best practices and a comparison with older load balancing methods
  • Interview questions on the feature
Quick answer: Smart Connection Rebalance = RAC watches which sessions touch which data, then relocates sessions with similar access patterns to the same instance. Fewer blocks cross the interconnect, so global cache waits drop.
Why RAC Sometimes Slows Itself Down

Your application connects through a service that runs on all instances. The listener spreads connections evenly, which looks perfectly balanced on a dashboard.

But balance by count is not balance by work. If sessions on instance 1 and instance 2 keep updating the same rows, every block has to travel across the interconnect through Cache Fusion. You see it in AWR as gc buffer busy, gc current block busy and other global cache waits.

For years the fix was manual: split the application into separate services, pin each to one instance, and hope the workload never changes. Smart Connection Rebalance does that thinking for you, continuously.

What Smart Connection Rebalance Is, in Plain Words

Smart Connection Rebalance watches how sessions access data across your RAC instances. When it finds sessions on different instances fighting over the same blocks, it quietly relocates them so that sessions with similar access patterns end up on the same instance.

Oracle describes it as transparently reshuffling service-based connections using real-time performance monitoring, with no manual intervention needed. The result is fewer blocks crossing the interconnect, lower global cache waits and better throughput for high-contention workloads.

Three words sum it up:

  • Smart β€” it decides based on actual data access, not just connection counts or CPU load.
  • Connection β€” it works at the level of service-based sessions and connections.
  • Rebalance β€” it moves existing sessions, not only new ones, so the cluster keeps adjusting as the workload changes.
A Simple Analogy

Imagine an office with two rooms and one shared filing cabinet. The accounts team is split across both rooms, so people keep running down the corridor to borrow the same files from each other. Everyone has a desk, the rooms look evenly staffed, yet work is slow because of all the back-and-forth.

A smart office manager notices the pattern and simply seats the whole accounts team in one room. The files stay in one place, nobody runs down the corridor, and work speeds up.

In RAC terms: the rooms are instances, the files are data blocks, the corridor is the interconnect, and the office manager is Smart Connection Rebalance.
How It Works, Step by Step

At a high level, the feature runs a continuous observe-decide-move loop:

  1. Observe. The database monitors, in real time, which sessions on which instances are touching which data, and how much global cache traffic that causes.
  2. Find affinity. It identifies groups of sessions with similar access patterns that are currently spread across instances and generating contention.
  3. Decide. It evaluates whether moving those sessions to a common instance would reduce cross-instance block transfers enough to be worth it.
  4. Move. It relocates the sessions to the chosen instance, using RAC's connection draining and high availability machinery so the application does not see errors.
  5. Repeat. As the workload shifts during the day, the loop keeps re-evaluating and rebalancing.

The key point for DBAs: this is not a one-time placement decision made at login. It is ongoing, and it is driven by data access rather than session count.

Before and After: A Simple Scenario

Take a two-node RAC database running two applications through one service, APP_SVC, available on both instances. ORDERS sessions work on order tables; BILLING sessions work on invoice tables. The listener spreads both evenly.

ASPECT
WITHOUT SMART CONNECTION REBALANCE
WITH SMART CONNECTION REBALANCE
Session placement
ORDERS and BILLING sessions mixed on both instances
ORDERS sessions gathered on instance 1, BILLING on instance 2
Block movement
Hot order and invoice blocks ping-pong between nodes
Each set of hot blocks stays mostly on one node
AWR wait profile
gc buffer busy and gc current waits near the top
Global cache waits drop; DB CPU and local I/O dominate
Interconnect
Busy with block transfers
Much quieter
DBA effort
Create separate services and pin them by hand
None; the database adjusts on its own
Keep in mind: This is an illustrative scenario. Actual gains depend on how much contention your workload has; a workload with little cross-instance sharing has little to gain.
How to Know if Your Service Needs It

You do not have to guess. Oracle gives you two built-in signals.

1. The AWR Report

Oracle's MAA team notes that AWR includes a Smart Connection Rebalance recommendation engine section, which points out workloads that would benefit from the feature. Start here when you see heavy global cache waits.

2. V$ACTIVE_SERVICES

In the 26ai reference, this view has a column that reports, per service, whether enabling Smart Connection Rebalance is recommended. A value of YES means Oracle recommends enabling it; ENABLED means it is already on.

sqlplus / as sysdba
-- Review your active services and their settings
SELECT *
FROM   v$active_services
ORDER  BY name;
Watch out: Check the exact column name and the commands to enable the feature in the Oracle documentation for your release, since syntax can differ between versions.

Good candidates usually show:

  • High gc wait events in the AWR Top 10 foreground events
  • One service spread across several instances
  • Many sessions repeatedly modifying the same tables or index blocks
Prerequisites and Best Practices

Smart Connection Rebalance builds on RAC features you may already use. The smoother your high availability setup, the more transparent the session moves will be.

  • Connect through services, not instance names β€” the feature reshuffles service-based connections, so applications must use a RAC service.
  • Use Oracle connection pools where possible β€” UCP for Java, ODP.NET or OCI session pools understand FAN events and handle drained connections cleanly.
  • Enable FAN β€” Fast Application Notification lets clients learn quickly that a connection should move.
  • Consider Application Continuity or Transparent Application Continuity β€” these help in-flight work survive a move without the user seeing an error.
  • Return connections to the pool after each request β€” applications that hold one connection for hours are harder to move gracefully.
  • Measure before and after β€” compare AWR global cache waits and response times to confirm the benefit in your environment.
  • Test first β€” validate in a non-production cluster with a realistic workload before enabling it in production.
Comparison with Older Load Balancing Options

RAC has always had load balancing. The difference is what each method balances on and when it acts.

METHOD
BALANCES ON
WHEN IT ACTS
MOVES EXISTING SESSIONS?
Client-side load balancing (LOAD_BALANCE=ON)
Random choice of listener address
At connect time
No
Server-side connection load balancing (CLB goal LONG/SHORT)
Session count or instance load
At connect time
No
Runtime Connection Load Balancing (RLB)
Load Balancing Advisory: service quality per instance
When the pool hands out a connection
No, only steers new requests
Manual service partitioning
DBA's knowledge of the application
When the DBA changes it
Only by hand
Smart Connection Rebalance
Real-time data access affinity and contention
Continuously
Yes, automatically

The older methods spread work evenly. Smart Connection Rebalance places work intelligently, which matters more when contention, not capacity, is the bottleneck. They are complementary: you still want good service design and RLB.

Smart Connection Rebalance Interview Questions

Q1. What problem does Smart Connection Rebalance solve?

It reduces Cache Fusion overhead caused by sessions on different instances contending for the same data blocks, by relocating those sessions to a common instance.

Q2. In which release was it introduced?

Oracle Database 23ai, and it continues in Oracle AI Database 26ai.

Q3. How is it different from Runtime Connection Load Balancing?

RLB steers new requests to the instance with the best service quality. Smart Connection Rebalance looks at data access affinity and moves existing sessions to cut cross-instance block transfers.

Q4. Which wait events suggest a workload would benefit?

High global cache waits such as gc buffer busy acquire/release and gc current block busy in AWR.

Q5. How can a DBA check if Oracle recommends enabling it?

Look at the Smart Connection Rebalance recommendation section in AWR, and the recommendation column in V$ACTIVE_SERVICES (YES means recommended, ENABLED means on).

Q6. Does the application need code changes?

No code changes are required for the feature itself, but applications should connect through services and ideally use Oracle pools, FAN and Application Continuity so moves are seamless.

Q7. When would it not help much?

When there is little cross-instance contention, for example when services are already well partitioned or the workload is mostly read-only on separate data.

Conclusion

Smart Connection Rebalance changes the question RAC asks from β€œwhich instance has room?” to β€œwhich instance already has this data?” By keeping sessions that share data on the same node, it attacks global cache contention at its source, without the DBA redesigning services by hand.

If your AWR reports are full of gc waits, check the AWR recommendation section and V$ACTIVE_SERVICES first. If Oracle says YES, test it in a lower environment, measure the difference, and let the database do the rebalancing for you.

Recap: what to take away

  • Smart Connection Rebalance moves sessions with similar data access to the same RAC instance
  • It cuts Cache Fusion traffic and global cache waits without manual service partitioning
  • It was introduced in 23ai and continues in 26ai
  • Check the AWR recommendation section and V$ACTIVE_SERVICES to see if a service would benefit
  • Use services, Oracle pools, FAN and Application Continuity for seamless session moves

Want more hands-on guides? KP Expert publishes practical, step-by-step guides for infrastructure and certification professionals. Explore KP Expert.

ORACLE RAC SERIES Published by KP Expert β†’
Recently Enrolled

Student enrolled in this course.

View course
Explore Courses

Latest from @kp__expert

Follow on Instagram
Loading Instagram posts...

AI Course Assistant

Share your details and goals to get the best course recommendations.

Recommended Courses

Select a course name to view full details.

Course Details
Enrollment & Contact
  • Review selected course and confirm your enrollment request.
  • Click checkout to move into the full payment process.
  • After payment submission, your enrollment is processed by our team.
Admissions Contact
Email: info@kpexpert.com
Phone: +91 92708 37105
Your submitted details
Name, email and phone will appear here.
Your request has been submitted successfully. Our team will contact you shortly.