Operations 9 min read

How a Global Bank Doubled Release Frequency and Halved Failures with Automated Data Patch Pipelines

A major bank transformed its legacy vendor‑managed .NET/Oracle applications by automating data‑patch deployments through Git, Jenkins, and custom database tools, enabling weekday releases, reducing manual effort, cutting overtime, and achieving continuous delivery despite outdated systems.

dbaplus Community
dbaplus Community
dbaplus Community
How a Global Bank Doubled Release Frequency and Halved Failures with Automated Data Patch Pipelines

Background

The bank operates a monolithic .NET/Oracle application serving ten countries in Asia and Europe. Over 20 changes are released to production each month, typically in a single monthly window (weekends or early mornings), requiring extensive overtime and carrying high risk.

Goal

Increase release frequency (double) and halve failure rate without additional overtime by moving low‑risk, region‑specific data‑patches to weekday maintenance windows aligned with each region’s business hours.

Key Findings

Most changes are small data patches affecting a single country; they can be automated and scheduled per region.

Separating these patches from the global monthly release reduces the scope and overall risk of each release.

Implementation

Test Environment Automation

Vendors commit patch scripts to a Git test branch, which triggers a Jenkins job.

The Jenkins job runs a custom database deployment tool that applies the scripts to a dedicated test environment.

Vendors must also provide validation scripts that are executed during deployment.

If validation succeeds, business users are notified to start UAT; if it fails, the deployment tool raises an exception and initiates a rollback.

Production Environment Automation

After UAT approval, the patch is merged into the Git master branch and a release‑approval workflow is started.

A Jenkins job is scheduled for the next appropriate maintenance window based on the affected region (e.g., Hong Kong 23:00‑08:00, Europe 02:00‑16:00).

The job invokes the same database deployment tool to apply the scripts to production.

Successful validation completes the release; failure sends a notification and requires manual rollback.

Sample Acceptance Script (PL/SQL)

DECLARE
  NumberOfPatch_Actual NUMBER;
  NumberOfPatch_Expect INT := 2;
BEGIN
  SELECT COUNT(*) INTO NumberOfPatch_Actual FROM USERS WHERE user_id = 'USERA';
  IF NumberOfPatch_Actual <> NumberOfPatch_Expect THEN
    RAISE_APPLICATION_ERROR(-20001, 'Error, This is testing for the log capturing');
  END IF;
END;
/

Results

Data patches are now delivered continuously, accelerating business value and improving stakeholder satisfaction.

IT staff are freed from repetitive, low‑value deployment tasks.

Perceived release risk has dropped and overtime has been dramatically reduced.

Monthly release frequency increased from 1‑2 times to over a dozen small, low‑risk releases.

Challenges & Mitigations

Progress tracking: Daily stand‑ups were split (odd days for routine work, even days for pipeline implementation) to maintain momentum and meet the one‑month target.

Automated acceptance: Vendors must supply acceptance scripts; the PL/SQL example above demonstrates a simple check that raises an error on mismatch.

Rollback strategy: Full automatic rollback was deemed unsafe for multi‑step patches, so manual rollback is retained.

Failure notification: Current pipeline sends email alerts; the team plans to add more immediate mobile notifications.

Conclusion

Even legacy vendor systems that rely heavily on database changes can achieve DevOps objectives by re‑thinking the release process, automating test‑to‑production pipelines, and scheduling region‑specific data patches during appropriate maintenance windows.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

DevOpsGitContinuous DeliveryJenkinsrelease-managementdatabase automationlegacy systems
dbaplus Community
Written by

dbaplus Community

Enterprise-level professional community for Database, BigData, and AIOps. Daily original articles, weekly online tech talks, monthly offline salons, and quarterly XCOPS&DAMS conferences—delivered by industry experts.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.