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.
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.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
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.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
