Parallel-run testing catches a rounding defect before it reaches production
Case Study Version Upgrade

Parallel-run testing catches a rounding defect before it reaches production

A mid-market financial services firm needed off Oracle 12c ahead of extended-support expiry — but its core ledger and nightly batch settlement system left zero room for a precision error. OptiSol used Data Guard-based parallel-run testing to validate every settlement run against Oracle 23ai, and the process surfaced a rounding mismatch weeks before go-live.

Financial Services Oracle 12c → 23ai Parallel-Run Validation Data Guard Cutover
12c → 23ai
Version jump onto Oracle's AI-native release
1
Critical precision defect caught pre-go-live
Zero
Unplanned downtime at cutover
The Challenge

A Ledger System With No Margin for Error

Oracle 12c was approaching the end of its extended-support window, and the firm's core ledger and batch settlement platform sat squarely in scope. Unlike a typical application upgrade, a numeric or logic discrepancy here would not just be a bug — it could misstate a client's balance.

Vendor Risk

Extended Support Expiring on a Regulated System

Oracle 12c's extended-support window was closing, and the ledger platform underpins statements and settlement records subject to financial-services audit and regulatory review. Staying put was not a viable long-term option.

Custom PL/SQL

Core Settlement Logic Built Over Many Years

The nightly batch settlement job and its supporting packages had accumulated years of numeric handling, rounding conventions, and exception logic. No one wanted to touch it without proof it would behave identically on a newer engine.

Financial Precision

Zero Tolerance for Rounding or Balance Drift

A ledger and settlement system has to reconcile to the cent. An optimizer change, a datatype default shift, or a subtle arithmetic path difference between versions could silently misstate a batch total — and might not surface until an audit.

The Approach

Run Every Settlement Twice, Trust Nothing Until It Matches

Rather than cut over on faith, we stood up a Data Guard-based 23ai standby and ran real settlement cycles against it in parallel with production for weeks — reconciling every output before the target environment was allowed anywhere near go-live.

Discovery & Financial-Logic Risk Assessment

Every package, procedure, and job involved in the ledger and settlement flow was inventoried and checked against Oracle 23ai's compatibility matrix, with numeric-handling and datatype-default changes flagged as the highest-priority risk area.

Pre-Upgrade Validation on an Isolated Clone

A cloned schema was migrated to Oracle 23ai and every settlement-related package recompiled and unit-tested in isolation, with particular attention to rounding functions, precision arithmetic, and currency-conversion routines.

Staged Migration Behind a Data Guard Standby

An Oracle 23ai standby was built and kept current with production via Data Guard, giving the team a continuously up-to-date target environment without freezing or duplicating manual data loads.

Parallel-Run Testing Surfaces a Rounding Defect

Every nightly batch settlement run was executed against both the 12c production system and the 23ai standby, with outputs reconciled line by line. One run produced a small but real precision mismatch in a settlement total — traced to a rounding function behaving differently under 23ai's numeric handling. It was fixed and re-verified for several subsequent cycles, entirely before go-live.

Zero-Downtime Cutover via Data Guard Switchover

With weeks of matching settlement output behind it, cutover was executed as a planned Data Guard switchover rather than a migration event — traffic redirected to the 23ai environment with a tested fallback path held in reserve.

A Balance-Affecting Defect Never Reached Production The rounding mismatch caught during parallel-run testing is exactly the kind of issue that, left undetected, could have misstated settlement totals and triggered a costly post-go-live reconciliation and audit response.
Zero Unplanned Downtime at Cutover Because the target environment was kept continuously current via Data Guard, the switchover was a planned, reversible event rather than a disruptive migration window.
Settlement Logic Preserved and Verified, Not Just Migrated Every package carried forward to Oracle 23ai only after its output was proven to match production across multiple real batch cycles — an estimated far higher bar than a typical compile-and-hope upgrade.
A Repeatable Validation Model for Future Upgrades The parallel-run harness built for this migration gives the firm a reusable pattern for validating any future Oracle version change against its financial-precision requirements.
The Impact

The Business Impact

  • Core ledger and batch settlement platform moved off Oracle 12c onto Oracle 23ai ahead of extended-support expiry
  • A precision/rounding defect in nightly settlement logic caught and resolved weeks before go-live
  • Every settlement package validated against real batch cycles, not just recompiled
  • Zero unplanned downtime — cutover executed as a planned Data Guard switchover
  • Tested fallback path held in reserve throughout the cutover window
  • Reusable parallel-run validation model established for future version upgrades
"Finding that rounding mismatch during parallel-run testing, instead of after go-live, is the entire reason this kind of validation exists. That one catch was worth the extra weeks on its own." — OptiSol Oracle Engineering Lead

Let's Talk

Start a Conversation

Tell us what you are running today and where you need expert support.

"*" indicates required fields

Free initial consultation Confidential assessment solutions@optisolbusiness.com

Global Presence

Where We Operate

Five global locations. One connected engineering team.

New York skyline representing the United States office
HQ

United States

North America

India landmark representing the delivery centre
Delivery Hub

India

Chennai · Coimbatore

London skyline representing the United Kingdom office
Europe

United Kingdom

Client services

Australian coastline representing the Australia office
APAC

Australia

Regional operations

Dubai skyline representing the UAE office
Middle East

UAE

Client services