OpenLogReplicator reached beta version!

After almost 3 years of development, the project has reached a moment, that most of the features planned for version 1.0 are finished for OpenLogReplicator. So … announcing version 0.9.0-beta. At this point the goal is to make the code stable as possible and fix all reported bugs. If you want to test the code …

OpenLogReplicator reached beta version! Read More »

OpenLogReplicator has full DDL support?

Technically speaking support of DDL is trivial. All schema is written in SYS.xxx$ tables. Just what you need to do is to track the changes, and once they appear, rebuild internal dictionaries. Someone adds column to table? Well, you would see an INSERT to SYS.COL$ and maybe some other tables. … A few months later …

OpenLogReplicator has full DDL support? Read More »

Oracle database log-based CDC on Raspberry PI

The task here is just to run native replication solution directly on Raspberry PI hardware. No emulators, no workarounds, no cheating. Let’s find out what is the redo log processing speed. The key to this approach is using OpenLogReplicator as CDC engine and it’s offline mode. With this mode you can read redo logs without …

Oracle database log-based CDC on Raspberry PI Read More »

Supplemental logging – how much space does it require?

Oracle at some point of decided that users might want to replicate the changes from the database to other targets. What they noticed, that the architecture of the database did not allow easy replication since the redo log did not contain information that would allow to identify the exact row, that has been modified. The …

Supplemental logging – how much space does it require? Read More »

Oracle redo log format community documentation

The format is proprietary and there is no public official document which would describe the structure. Here is a brief summary of various sources which are publicly available. One might think that there is very little information available, but that’s not true. This is a list I have made in the past when I was …

Oracle redo log format community documentation Read More »

Oracle database: replicating objects from SYS schema

One of the most confusing with Oracle replication tools is the inability to track changes of tables owned by SYS, SYSTEM or CTXSYS. Many system tables are internally using cluster type. Since the latest version OpenLogReplicator supports cluster tables it is now possible track also tables in SYS schema and send changes as events to …

Oracle database: replicating objects from SYS schema Read More »

OpenLogReplicator – replication latency

Replication latency is one of the key indicators of good replication. When I started working on OpenLogReplicator one of my key tasks was to keep the latency as low as possible. What does that mean? When a client commits a transaction and the database confirms that the transaction is committed – it means that the …

OpenLogReplicator – replication latency Read More »

logdump output errors for tables with ROWDEPENDENCIES

Every Oracle database user assumes that the output of the logdump command should provide a valid output. During testing of OpenLogReplicator I came across something strange. It appears that the output of OpenLogReplicator logdump mode is better than the original output of Oracle database logdump command. Maybe I am wrong? Let’s create a test scenario …

logdump output errors for tables with ROWDEPENDENCIES Read More »

OpenLogReplicator – logdump functionality

A side product of OpenLogReplicator is the ability to create logs which are in a very simular form as the logdump command from Oracle database. To create such dump you need to configure parameter in the OpenLogReplicator CFG file. There are 2 allowed values: create classic ‘logdump’ output create classic ‘logdump’ output enhanced with interpretation …

OpenLogReplicator – logdump functionality Read More »

OpenLogReplicator – chained row support

The OpenLogReplicator with the new release 0.2.0 has been extended to support chained rows. A chained row can appear when there is a bigger DML operation or the table uses more than 254 columns. This is an example of a table which uses 1000 columns. The table definition is: CFG definition file of OpenLogReplicator contains …

OpenLogReplicator – chained row support Read More »