CRClear member
- Source
CLRPFM CUSTOMER - CDC
CR (Clear member)detected - Target
TRUNCATE CUSTOMER
CLRPFM on source → target truncates.
Change Data Capture for IBM i / DB2 for i
A Java-based CDC product, built on 40 years in data integration. It follows the data — and the file-lifecycle and structural changes behind it — from the journal into Kafka, Azure Service Bus, Azure Event Hubs and ETL targets.
origin
IBM i / DB2 for i
record
Journal
capture
CDC Engine
delivery
Targets
01 — The problem
Conventional CDC pipelines are built around INSERT, UPDATE and DELETE. An IBM i journal also records what happens to the files themselves — and those entries change the real state and structure of the source.
A member is cleared — for example by CLRPFM. Every row is gone, but no DELETE was journaled for any of them.
A new file appears on the source. There is no target table waiting for it.
The file’s definition changes. Rows that follow may no longer match the structure the target expects.
Schema drift
Source and target structures diverge without anyone being told.
Stale targets
A member cleared on the source is still full on the target.
Broken pipelines
The next row change arrives in a shape the target cannot accept.
Manual reconciliation
Someone writes the script that puts things back — usually on a Saturday night.
02 — The product
The CDC engine reads CR, CT and CG entries as first-class events — not noise to be filtered out — and applies their meaning to the target. Structure stays in sync alongside the rows.
CLRPFM CUSTOMERCR (Clear member)detectedTRUNCATE CUSTOMERCLRPFM on source → target truncates.
CREATE FILE ORDERSCT (Create file)detectedCREATE TABLE ORDERSNew file appears → new table provisions itself.
ALTER / CHANGE FILECG (Change file)detectedSchema evolvesSource schema evolves → target evolves.
Your Kafka, Azure Service Bus, Event Hubs and ETL targets don’t break, don’t drift, and don’t need a Saturday-night reconciliation script.
03 — How it works
A Java CDC engine reads the IBM i journal and forwards both row-level and file-lifecycle changes to event-driven and ETL targets.
04 — Event awareness
Between the row changes sit entries that describe what happened to the file itself. A CDC engine that recognizes them can keep the target’s structure honest, not just its rows.
No individual DELETE entries follow a clear. A target that only reacts to row changes keeps serving rows that no longer exist.
Rows journaled after a file change may carry a different structure. Without acting on CG, the next UPDATE can be the one that breaks the pipeline.
A new file on the source has no counterpart downstream until someone creates one — or until the CDC engine does.
05 — Experience
The product comes from decades of dealing with real enterprise data systems — not from a theoretical understanding of CDC.
Built by
Cezary Opacki
40 years in data integration — IBM mainframes, AS/400, DB2 for i, modern cloud. One observation keeps repeating: most CDC tools for IBM i fall over the moment something other than a row change appears in the journal. I build the one that doesn’t.
Engineering philosophy
They happen when objects change, schemas evolve, files are cleared, or new structures appear. A pipeline that only knows about rows has nothing to say in those moments. This one was designed for them.
06 — Contact